微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Istio组件日志设置

1.istio-pilot日志级别

编辑istio-system.deployment.istio-pilot,修改args中--log_output_level=default:指定日志级别

2.istio-policy日志级别设置同istio-pilot

3.istio-proxy(envoy)日志级别设置

进入istio-proxy容器中,通过如下命令进行设置:

curl -X POST localhost:15000/logging?level=trace

4.istio-proxy access日志设置

官方参考:https://istio.io/docs/tasks/telemetry/logs/access-log/

修改istio-system.configMap.istio中的accessLogFile: "/dev/stdout"

修改后即可在istio-proxy看到如下accessLog(业务app pod容器无需重启): 

认accessLogFormat:

通过如下命令查看accessLogFormat配置:

istioctl proxy-config listeners <your pod> -n <your namespace> -o json

 

[%sTART_TIME%] \"%rEQ(:METHOD)% %rEQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %rESPONSE_CODE% %rESPONSE_FLAGS% \"%DYNAMIC_MetaDATA(istio.mixer:status)%\" %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %rESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%rEQ(X-FORWARDED-FOR)%\" \"%rEQ(USER-AGENT)%\" \"%rEQ(X-REQUEST-ID)%\" \"%rEQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\" %UPSTREAM_CLUSTER% %UPSTREAM_LOCAL_ADDRESS% %DOWNSTREAM_LOCAL_ADDRESS% %DOWNSTREAM_REMOTE_ADDRESS% %rEQUESTED_SERVER_NAME%\n

实际日志与认格式对比:

[2019-09-24T05:57:56.836Z] 
"POST /256/vendorRetire/list HTTP/1.1" 
200 - "-" 
113 6029 110 110 
"-" "Apache-HttpClient/4.5.7 (Java/1.8.0_192)" "d17359bf-7b4c-4c44-8dab-003c59fa810b" "s267.tsp" 
"127.0.0.1:8080" inbound|80|http|s267.tsp.svc.cluster.local - 
172.25.193.104:8080 172.25.123.74:33340 - 

====================================================================================

[%sTART_TIME%] 
\"%rEQ(:METHOD)% %rEQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" 
%rESPONSE_CODE% %rESPONSE_FLAGS% \"%DYNAMIC_MetaDATA(istio.mixer:status)%\" 
%BYTES_RECEIVED% %BYTES_SENT% %DURATION% %rESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% 
\"%rEQ(X-FORWARDED-FOR)%\" \"%rEQ(USER-AGENT)%\" \"%rEQ(X-REQUEST-ID)%\" \"%rEQ(:AUTHORITY)%\" 
\"%UPSTREAM_HOST%\" %UPSTREAM_CLUSTER% %UPSTREAM_LOCAL_ADDRESS% 
%DOWNSTREAM_LOCAL_ADDRESS% %DOWNSTREAM_REMOTE_ADDRESS% %rEQUESTED_SERVER_NAME%\n

其中RESPONSE_FLAGS定义如下:

envoy log参考:

Envoy官方参考 - access_log#config-access-log-default-format

stackoverflow - what-is-istio-proxy-access-log-mean 

5.Springboot Tomcat访问日志

开启如下配置:

server.tomcat.accesslog.enabled = true
server.tomcat.accesslog.directory = /data/logs/tomcat

即可在应用容器中/data/logs/tomcat看到如下访问日志:

查看最近的access_log即可看到tomcat的访问日志:

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐