本节重点介绍 :
编译二进制
go build -o log2metrics main.go
修改配置文件
http_addr : 0.0.0.0: 8087
log_level : INFOlog_strategy : - metric_name : log_var_log_messages_level_totalmetric_help : /var/log/messages中的日志 totalfile_path : /var/log/messagespattern : ".*" func : cnttags : level : ".*level=(.*?) .*" - metric_name : ngx_acc_codemetric_help : nginx access日志中的code 数字最大值file_path : /var/log/nginx/access.logpattern : '.*\[code=(.*?)\].*' func : max- metric_name : ngx_acc_code_summetric_help : nginx access日志中的code 数字最大值file_path : /var/log/nginx/access.logpattern : '.*\[code=(.*?)\].*' func : sum
修改nginx access log的logfmat
log_format main '$remote_addr - $remote_user [$time_local ] "$request " ' '[code=$status ] $body_bytes_sent "$http_referer " ' '"$http_user_agent " "$http_x_forwarded_for "' ;
运行服务
./log2metrics
查看metrics
配置prometheus采集
- job_name : 'log2metrics' honor_timestamps : true scrape_interval : 15smetrics_path : /metricsscheme : httpstatic_configs : - targets : - 192.168.3.200: 8087
配置grafana
本节重点总结 :