Kibana可视化设置
加载数据
在你开始之前:加载案例数据
本段教程依赖如下数据集:
-
莎士比亚的所有著作,合适地解析成了各个字段:shakespeare.json。
-
随机生成的虚构账号数据:accounts.json
-
随机生成的日志文件:logs.jsonl
认识数据
数据格式
莎士比亚数据集由如下数据格式组织
{
"line_id": INT,
"play_name": "String",
"speech_number": INT,
"line_number": "String",
"speaker": "String",
"text_entry": "String",
}
账户数据集由如下数据格式组织
{
"account_number": INT,
"balance": INT,
"firstname": "String",
"lastname": "String",
"age": INT,
"gender": "M or F",
"address": "String",
"employer": "String",
"email": "String",
"city": "String",
"state": "String"
}
日志数据有几十个不同的字段,但是在教程中关注的字段如下:
{
"memory": INT,
"geo.coordinates": "geo_point"
"@timestamp": "date"
}
在导入莎士比亚数据集之前,我们需要为各个字段建立一个映射。映射把索引里的文档划分成逻辑组,指明字段的特征,如字段是否可被搜索、是否被标记、是否能被拆分成多个文字等。
mapping映射
使用以下命令为莎士比亚数据集建立一个映射。
PUT /shakespeare
{
"mappings": {
"doc": {
"properties": {
"speaker": {"type": "keyword"},
"play_name": {"type": "keyword"},
"line_id": {"type": "integer"},
"speech_number": {"type": "integer"}
}
}
}
}
这个映射指明了数据集的如下特征:
-
speaker字段是一个字符串,并且不被分析。这个字段的字符串被视为一个单元,即时字段值有多个文字。
-
play_name同样符合上述特征。
-
line_id和speech_number是一个整数。
日志数据需要一个映射表明地理位置的经纬度,通过在那些字段使用一个geo_point类型。
使用以下命令为日志数据建立一个geo_point映射。
PUT /logstash-2015.05.18
{
"mappings": {
"log": {
"properties": {
"geo": {
"properties": {
"coordinates": {
"type": "geo_point"
}
}
}
}
}
}
}
PUT /logstash-2015.0