ELK STACK使用思路是怎么样的( 三 )
配置logstash agent采集nginx日志并输出到RabbitMQ;为了排错,同时输出一份日志到本地。# vim /etc/logstash/conf.d/ngx_log.confinput { file {\tpath =\u0026gt; "/usr/local/nginx/logs/api_json.log"\tcodec =\u0026gt; "json"\ttype =\u0026gt; "nginx" }}output { rabbitmq { \thost =\u0026gt; "RabbitMQ_server"\tport =\u0026gt; "5672"\tvhost =\u0026gt; "elk"\texchange =\u0026gt; "elk_exchange"\texchange_type =\u0026gt; "direct"\tkey =\u0026gt; "elk_key" user =\u0026gt; "liang" password =\u0026gt; "liang123"\t} stdout { codec =\u0026gt; rubydebug } }配置tomcat服务器输出json格式日志,修改工程的logback.xml配置文件,添加如下配置\t\u0026lt;appender name="LOGSTASH" class="ch.qos.logback.core.rolling.RollingFileAppender"\u0026gt; \u0026lt;file\u0026gt;${catalina.base}/logs/tomcat_json.log\u0026lt;/file\u0026gt;\t \u0026lt;encoder class="net.logstash.logback.encoder.LogstashEncoder"\u0026gt;\t \u0026lt;charset\u0026gt;utf8\u0026lt;/charset\u0026gt;\t \u0026lt;/encoder\u0026gt; \t \u0026lt;rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"\u0026gt; \t \u0026lt;fileNamePattern\u0026gt;${catalina.base}/logs/tomcat_json-%d{yyyy-MM-dd}.log\u0026lt;/fileNamePattern\u0026gt; \t \u0026lt;/rollingPolicy\u0026gt; \t\u0026lt;/appender\u0026gt; \u0026lt;root level="info"\u0026gt; \u0026lt;appender-ref ref="LOGSTASH" /\u0026gt; \u0026lt;/root\u0026gt;下载依赖的jar包logstash-logback-encoder到{CATALINA_BASE}/libwget http://central.maven.org/maven2/net/logstash/logback/logstash-logback-encoder/4.4/logstash-logback-encoder-4.4.jar配置logstash agent采集tomcat日志并输出到RabbitMQ# vim /etc/logstash/conf.d/tomcat_log.confinput { file {\tpath =\u0026gt; "/usr/local/tomcat/logs/tomcat_json.log"\tcodec =\u0026gt; "json"\ttype =\u0026gt; "tomcat" }}output { rabbitmq { \thost =\u0026gt; "RabbitMQ_server"\tport =\u0026gt; "5672"\tvhost =\u0026gt; "elk"\texchange =\u0026gt; "elk_exchange"\texchange_type =\u0026gt; "direct"\tkey =\u0026gt; "elk_key" user =\u0026gt; "liang" password =\u0026gt; "liang123"\t} stdout { codec =\u0026gt; rubydebug } }配置logstash indexer把日志从RabbitMQ输出到Elasticsearch# vim /etc/logstash/conf.d/rabbitmq.confinput { rabbitmq {\thost =\u0026gt; "127.0.0.1"\tsubscription_retry_interval_seconds =\u0026gt; "5"\tvhost =\u0026gt; "elk"\texchange =\u0026gt; "elk_exchange"\tqueue =\u0026gt; "elk_queue"\tdurable =\u0026gt; "true"\tkey =\u0026gt; "elk_key"\tuser =\u0026gt; "liang"\tpassword =\u0026gt; "liang123" }}output { if == "nginx" { elasticsearch { hosts =\u0026gt; "Elasticsearch_server:9200" user =\u0026gt; "logstash" password =\u0026gt; "123456"\t index =\u0026gt; "nginx-%{+YYYY.MM.dd}" } } else if == "tomcat" { elasticsearch { hosts =\u0026gt; "Elasticsearch_server:9200" user =\u0026gt; "logstash" password =\u0026gt; "123456"\t index =\u0026gt; "tomcat-%{+YYYY.MM.dd}" } } else {\tfile {\t path =\u0026gt; "/var/log/logstash/unknown_messages.log"\t } \t} stdout { codec =\u0026gt; rubydebug }}
推荐阅读
- 『先进』长江流域最先进洗舱站在宁投运 油可分离回收,水能循环使用
- 汽车|冬天怎样让车内温度快速升高?座椅加热的最佳使用方式二,外循环的作用总结
- 汽车|迈凯伦Artura不再使用迈凯伦祖传V8引擎了?
- python的html5lib这个库咋使用啊我在网上也没有找到相关文档
- win7中本地连接跟无线网卡同时使用时是怎么样的模式
- 可不可能利用网盘的秒传功能使用伪造的MD5(或其他信息)值进行文件分享
- 为啥很多企业给用户发邮件会使用noreply/no-reply@xx.xx的邮箱
- win10激活的问题
- 全网通的mate8能不能插美国手机卡,在美国使用
- 汽车|首批200辆吉利新能源出租车在长交付使用,充电半小时电量可达80%
