JHipster提供了以下几个功能监视应用程序
日志功能在运行时设置日志级别
使用 Dropwizard Metrics 收集性能指标
一个独立的,可视化服务监控功能
注意 此页面只能显示当前实时数值,但是开发者更关心这些数值的变化曲线
因此,JHipster程序可以通过配置,将这些运行指标转发到监控系统上。由监控服务器进行统计,并进行绘制,分析
JHipster提供以下方式
- JHipster-Console 基于ELK技术栈和JHipster集成的自定义监控解决方案
- JMX, Graphite 和 Prometheus
配置程序将日志和运行指标转发到监控服务器
将日志转发到JHipster-Console
配置转发日志,修改application-dev.yml
或者application-prod.yml
文件
jhipster:
logging:
logstash:# Forward logs to logstash over a socket, used by LoggingConfiguration
enabled: true
host: localhost # If using a Virtual Machine on Mac OS X or Windows with docker-machine, use the Docker's host IP here
port: 5000
queueSize: 512
配置 运行指标监控,在配置文件中启用运行指标标准日志
jhipster:
metrics:
logs: # Reports Dropwizard metrics in the logs
enabled: true
reportFrequency: 60 # seconds
将运行指标转发到监控系统(JMX,Graphite,Prometheus)
将运行指标转发到监控系统,修改配置文件
jhipster:
metrics: # DropWizard Metrics configuration, used by MetricsConfiguration
jmx.enabled: true
graphite: # Send metrics to a Graphite server
enabled: true
host: localhost
port: 2003
prefix: jhipster
prometheus: # Expose Prometheus metrics on the /prometheusMetrics endpoint
enabled: true
endpoint: /prometheusMetrics
使用JHipster-Console
JHipster-Console 监控系统基于ELK技术栈,提供即用的仪表板和分析工具,可以实时了解系统的性能指标
ELK技术栈包括
- Elasticsearch用于索引数据(日志和指标)
- Logstash管理和处理这些日志
- Kibana通过可视化仪表盘分析日志
分别下载ELK程序(我下载的是windows的5.1.1版本)
分别解压
将 kibana.yml下载并解压至kibana-5.1.1-windows-x86\config
注意将 elasticsearch.verify_ssl
注释,否则会报错
将 logstash.conf 下载并解压至 logstash-5.1.1\config
注意将type => syslog
去掉,将hosts => "jhipster-elasticsearch"
改成实际elasticsearch地址,例如 localhost
将 jhipster-console 下载至 elasticsearch-5.1.1
启动 elasticsearch
elasticsearch-5.1.1\bin\elasticsearch.bat
启动 logstash
logstash-5.1.1\bin\logstash -f ../config/logstash.conf
启动 kibana
kibana-5.1.1-windows-x86\bin\kibana -e http://localhost:9200
打开git bash(或者其他windows下的其他linux shell模拟器)
假设jhipster-console
在d:\elasticsearch-5.1.1\
下
打开git bash(或者其他windows下的其他linux shell模拟器)
cd /d/elasticsearch-5.1.1/jhipster-console
./load-localhost.sh
会将dashboards下定义好的图表自动导入到kibana下
此时就可以 按照文档 添加索引集了
如果成功,打开 Dashboard
即可看到相应的图表了,如下图