您可使用Telegraf采集Java应用或Tomcat的监控数据,再通过日志服务Logtail将Telegraf数据上传到MetricStore中,搭建Java应用或Tomcat可视化监控方案。本文以Java应用监控数据为例,介绍如何通过日志服务来完成Java应用数据的采集和可视化。
前提条件
- 已在服务器上安装Linux Logtail 0.16.48或以上版本。更多信息,请参见安装Logtail(Linux系统)。
- 已在服务器上安装Java 1.6或以上版本。
步骤1:创建Logtail采集配置
步骤2:配置JavaAgent
- 如果是普通Java应用,需在Java启动参数中添加
-javaagent:/etc/ilogtail/telegraf/javaagent/jolokia-jvm.jar=port=7777
。 - 如果是Tomcat,需设置
JAVA_OPTS
环境变量,例如export JAVA_OPTS="-javaagent:/etc/ilogtail/telegraf/jolokia-jvm.jar=port=7777"
,其中7777为服务器端口号,要与步骤1:创建Logtail采集配置中配置的端口号一致。
-javaagent:/tmp/jolokia-jvm.jar=port=7777,host=0.0.0.0
java -jar /etc/ilogtail/telegraf/javaagent/jolokia-jvm.jar --port 7777 start 进程PID
Jolokia is already attached to PID 752
http://127.0.0.1:7777/jolokia/
curl http://127.0.0.1:7777/jolokia/
# 返回参考
{"request":{"type":"version"},"value":{"agent":"1.6.2","protocol":"7.2","config":{"listenForHttpService":"true","maxCollectionSize":"0","authIgnoreCerts":"false","agentId":"30.43.124.186-752-5b091b5d-jvm","debug":"false","agentType":"jvm","policyLocation":"classpath:\/jolokia-access.xml","agentContext":"\/jolokia","serializeException":"false","mimeType":"text\/plain","maxDepth":"15","authMode":"basic","authMatch":"any","discoveryEnabled":"true","streaming":"true","canonicalNaming":"true","historyMaxEntries":"10","allowErrorDetails":"true","allowDnsReverseLookup":"true","realm":"jolokia","includeStackTrace":"true","maxObjects":"0","useRestrictorService":"false","debugMaxEntries":"100"},"info":{"product":"tomcat","vendor":"Apache","version":"8.5.57"}},"timestamp":1602663330,"status":200}?
常见问题
如何查看Telegraf采集是否正常?
您可以在服务器上查看/etc/ilogtail/telegraf/telegraf.log文件中记录的日志进行判断,还可以将该日志采集到日志服务中进行查询。
后续步骤
- 查询分析
配置完成后,Telegraf将采集到的监控数据通过Logtail上传到日志服务MetricStore中。您可以在MetricStore查询分析页面进行查询分析操作,详情请参见查询分析时序数据。
- 可视化
- 完成Java应用监控相关配置后,日志服务自动在对应Project中生成名为Java应用监控_集群名称的仪表盘,您可以直接使用该仪表盘,还可以进行告警设置等操作。
- 完成Tomcat监控相关配置后,日志服务自动在对应Project中生成名为Tomcat监控_集群名称的仪表盘,您可以直接使用该仪表盘,还可以进行告警设置等操作。