总体而言,我对Elastic APM,Kibana,Elasticsearch和APM还是陌生的,没有遇到任何满足我需求的信息。我设置了elastic-apm[flask]
模块并遵循了该教程。在Kibana仪表板中,我获得诸如响应时间和服务器名称之类的信息,但client.ip等字段为空。我想跟踪IP地址(更确切地说,我的网站访问者来自哪里)。
那么,如何将用户的IP地址获取到Elastic APM的client.ip字段中?我不想每次请求路由时都发出app.logger.debug
语句。
答案 0 :(得分:1)
您必须修改您的弹性APM python代理代码。 通常,您可以在跨度示例中添加标签
elasticapm.label(key1=value1, key2=value2)
也可以直接将其添加到span对象。
您将从请求对象瓶获取IP
request.remote_addr
将此设置为所需的键。
有关弹性APM python代理的API的更多详细信息,请参见-https://www.elastic.co/guide/en/apm/agent/python/current/api.html
谢谢