IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> filebeat收集nginx日志打到logstash处理收入到es elk -> 正文阅读

[系统运维]filebeat收集nginx日志打到logstash处理收入到es elk

大概的一个流程图
在这里插入图片描述

nginx配置

主要是将日志转成json格式方便解析 , 一般配在 http{ }里

 log_format access_json '{"timestamp":"$time_iso8601",'
    '"host":"$server_addr",'
    '"clientIp":"$remote_addr",'
    '"size":$body_bytes_sent,'
    '"responseTime":$request_time,'
    '"upstreamTime":"$upstream_response_time",'
    '"upstreamHost":"$upstream_addr",'
    '"httpHost":"$host",'
    '"uri":"$uri",'
    '"xff":"$http_x_forwarded_for",'
    '"referer":"$http_referer",'
    '"tcpXff":"$proxy_protocol_addr",'
    '"httpUserAgent":"$http_user_agent",'
    '"status":"$status"}';
access_log /home/log/access_json.log access_json;
字段名含义
log_format声明一个日志格式
access_json这个日志格式的命名, 自定义
access_log开启成功日志 第二段是路径 第三段就是引用的日志格式名
↓日志字段名↓含义
$time_iso8601标准日至期格式
$server_addr…以后补上

filebeat

安装

curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.14.0-linux-x86_64.tar.gz
tar -xzvf filebeat-7.14.0-linux-x86_64.tar.gz

配置, 多配置就是多写一套 -type: log

- type: log

  # Change to true to enable this input configuration.
  enabled: true

  # Paths that should be crawled and fetched. Glob based paths.
  paths:
    - /home/log/access_json.log
    #- c:\programdata\elasticsearch\logs\*
  fields:
    log_source: nginx
    log_type: www
  fields_under_root: true
  tags: ["nginx"]

在下面输出配置输出到logstash

output.logstash:
  # The Logstash hosts
  hosts: ["192.168.0.1:5044"]

配置输出内容提升到json

processors:
  - add_host_metadata:
      when.not.contains.tags: forwarded
  - add_cloud_metadata: ~
  - add_docker_metadata: ~
  - add_kubernetes_metadata: ~
  - decode_json_fields:
      fields: ['message']
      target: ""
      overwrite_keys: false
      process_array: false
      max_depth: 1

不适用module中nginx配置 因为要使用json格式的日志

将message中的json对象提出来 到第一层的字段

启动 默认走filebeat.yml配置

nohup ./filebeat -e &

logstash 配置

将多个配置文件都放在一个目录下, 如/etc/logstash/conf.d

这里我配了一个logstash-nginx.yml

input {
  beats {
    port => 5044
    client_inactivity_timeout => 600  #600秒之后关闭空闲的连接
  }
}
output{
  stdout {codec => rubydebug}
  elasticsearch {
    index => "nginx_success_logs"
    hosts => ["localhost:9200"]
  }
}

如果有多套配置,监听的端口不要一样 就是上面的那个por=>5044

然后到logstash的目录下,去修改config/pipelines.yml 文件,里面简简单单

- pipeline.id: main
  path.config: "/etc/logstash/conf.d/*.conf"

就是把指向的位置改成刚才放多配置文件的目录下

检查一下配置文件

 bin/logstash -f logstash.conf -t

然后出来启动一下

 nohup ./bin/logstash -f ./config/pipelines.yml  &

要重启最简单的方法就是把data文件夹干掉,再执行就行了,这是我在调试期间才这么简单粗暴的走

建议走重读配置

./bin/logstash -f ./config/pipelines.yml --config.reload.automatic

es 配置

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-04-01 23:49:45  更:2022-04-01 23:52:42 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 0:00:50-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码