【问题标题】:AWS Kibana search with special symbols带有特殊符号的 AWS Kibana 搜索
【发布时间】:2017-08-14 09:40:51
【问题描述】:

目前,我在 AWS (v. 5.1) 上使用 Kibana + Elasticsearch。我无法搜索-/ 之类的特定符号,主要是我想在存储在Elasticsearch 中的日志中找到特定的URL,但Elasticsearch 忽略了这些符号,来自Elasticsearch 文档我知道这是因为正在使用标准分析仪。但是如果我正在检查当前的分析器状态,我可以看到以下请求的这条消息GET /_analyzer

{
    "error": {
        "root_cause": [
            {
                "type": "action_request_validation_exception",
                "reason": "Validation Failed: 1: text is missing;"
            }
        ],
        "type": "action_request_validation_exception",
        "reason": "Validation Failed: 1: text is missing;"
    },
    "status": 400
} 

here 表示支持入口点,但仍然不起作用

【问题讨论】:

    标签: amazon-web-services elasticsearch kibana


    【解决方案1】:

    分析器是每个字段的设置,您尝试运行的命令将是analyze a given text

    您感兴趣的是映射,例如:GET /my-index/my-type/_mapping

    https://discuss.elastic.co/t/how-to-use-slash-to-search-in-discovery/92340/2

    对您关于已分析和未分析字段以及如何在 Kibana 中使用它们的一般性问题提供了很好的答案

    【讨论】:

    • 感谢您的链接,我在映射中得到了它,但它没有出现在 Kibana UI(发现)中,即使它在管理中可见:(
    • *.raw 字段在“发现”中不可见,但您仍然可以在搜索栏中使用它们
    • 如果我像GET /elblogs*/elb-access-logs/_search?q=user_agent:Google那样发送req我有结果,如果像那样GET /elblogs*/elb-access-logs/_search?q=user_agent.raw:Google 0结果
    • 如果您使用的是.raw,它需要完全匹配——我猜user_agent 不仅仅包含“Google”,那么使用分析(非原始)字段就是您想要的.虽然您最初的问题提到了-/
    • 我的想法是不仅可以在 user_agent 中搜索 GoogleBot,还可以在 Ads-GoogleBot 等中搜索。所以有时我需要完全匹配,有时我会使用有点正则表达式来捕捉 -GoogleBot
    猜你喜欢
    • 2015-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-30
    • 1970-01-01
    • 2012-03-14
    • 1970-01-01
    相关资源
    最近更新 更多