什么是索引
日志服务提供通过关键词进行日志查询功能, 如果需要使用该功能(默认不打开),则首先需要在LogStore上创建索引。创建之后, 就可以通过关键词进行查询, 如:
1. KEY_1 OR KEY_2
日志中出现KEY_1 或 KEY_2
2. KEY_1 AND KEY_2
日志中同时出现KEY_1和KEY_2
3. KEY_1 NOT KEY_2
日志中出现KEY_1但不出现KEY_2
4. (KEY_1 OR KEY_2) AND KEY_3 NOT KEY_4
日志中出现KEY_1或KEY_2,并且出现KEY_3但不出现KEY_4
如何设置索引
在日志服务控制台“Project列表”页面选择指定Project点击即可进入“LogStore列表页面”,在“日志消费模式”下可以通过“创建”或者“修改”进行索引配置,如图示:
如果需要为“test-index”日志库创建索引,点击“创建”链接显示如下对话框:
其中“test-index”写入的日志内容如下:
索引属性配置说明
数据保存时间
支持7天、30天和90天。当期版本,时间只可以改小,不可以改大。 后续版本,将会支持时间改大。
全文索引属性
-
大小写敏感
- 选择false表示不区分,则查询“INTERNALERROR”和“internalerror”都能查询到样例日志,如果选择true,则只能通过“internalError”查询到样例日志。
-
分词符
-
根据指定单字符,将日志内容切分成多个关键词。例如样例日志:
日志内容:a,b;c;D-F 如果设置分隔符为:逗号,分号和短横线,则切分出来5个关键词: "a" "b" "c" "D" "F"
-
键值索引属性
-
默认的索引会查询日志中所有key对应的内容,只要有一个命中,就会被查询到。比如日志样例中,如果查询“internalError”,在“error”和“code”两个key中都满足该查询条件,如果只需要查询“error”为“internalError”的日志内容,需要设置键值索引,如下图示:
-
其中“键名称”即为用户指定日志内容特定字段Key,其它两项属性“大小写敏感”和“分词符”与“全文索引属性”中的功能一致,创建完成如上图的索引属性后,可根据如下查询获取“error”字段为“internalError”的日志内容:
error:internalError
合理配置索引
根据具体的查询业务需求,可以选择合适的索引方法,既能达到高效查询的需求,也能节省使用费用。
-
所有查询不需要指定键名称(Key)
- 可以只设置“全文索引属性”
- 无需设置“键值索引属性”
-
部分查询需要指定键名称(Key)
- 根据需求,对特定键(Key)创建键值索引