zoukankan      html  css  js  c++  java
  • elk-nginx输出json格式的日志

    把Nginx日志的格式输出成JSON格式展示在Kibana面板,生产环境中基本都是这么使用。

    1, 配置nginx

    主要修改nginx的访问日志格式,这里定义成json格式,以便后面logstash更好的处理,建议生产环境也这样使用。在主配置/etc/nginx/nginx.conf文件中添加如下内容(注释其他日志格式):

        log_format json '{"@timestamp":"$time_iso8601",'
                     '"host":"$server_addr",'
                     '"clientip":"$remote_addr",'
                     '"size":$body_bytes_sent,'
                     '"responsetime":$request_time,'
                     '"upstreamtime":"$upstream_response_time",'
                     '"upstreamhost":"$upstream_addr",'
                     '"http_host":"$host",'
                     '"url":"$uri",'
                     '"referer":"$http_referer",'
                     '"agent":"$http_user_agent",'
                     '"status":"$status"}';

    在/etc/nginx/conf.d/default.conf中添加如下一行,定义nginx日志使用的格式,以及日志文件的位置。

    access_log  /var/log/nginx/access.log  json;

    重新启动 nginx

    nginx -s stop
    nginx

    2, 配置logstash

    修改 indexer的角色配置文件  logstash_indexer.conf

    input {
         redis {
           host => "localhost"
           data_type => "list"
           key => "filebeat"
           type => "redis-input"
        }
    }
     
    filter {
         json {
           source => "message"
           remove_field => "message"
         }
    }
     
    output {
        elasticsearch {
          hosts => ["localhost"]
          index => "logstash-nginx-%{+YYYY.MM.dd}"
          document_type => "nginx"
          # template => "/usr/local/logstash-2.3.2/etc/elasticsearch-template.json"
          workers => 1
          flush_size => 20000
          idle_flush_time => 10
       }
    }

    删除老的 es数据

        
    $ rm -fr /data/elasticsearch/*

    然后重启 logstash 和 elasticsearch, 继续刷新 nginx日志

    转载自: http://www.ywnds.com/?p=9776

  • 相关阅读:
    elasticsearch7.1 安装启动报错
    jvm调优
    基于redis实现IP访问频次控制
    docker 搭建redis集群
    Tomcat安全配置与性能优化
    mybaties 的 applicationContext.xml
    SSH阶段常见错误及说明
    hibernate 7种映射关系
    (四)SpringBoot如何定义消息转换器
    java之package与import
  • 原文地址:https://www.cnblogs.com/wenbronk/p/7505458.html
Copyright © 2011-2022 走看看