实时输出多主机日志文件内容

实现跨多主机的类似tail功能

版本&兼容性

版本支持

兼容性

  • [x] CentOS6
  • [x] CentOS7

使用方式

参考以下链接进行安装

生成默认配置文件

$ easyctl track tail-log
I1001 11:13:06.384839  126576 track.go:50] 检测到配置文件参数为空,生成配置文件样例 -> config.yaml

修改配置文件

config.yaml,修改server列表,日志文件path

server:
  - host: 10.10.10.[1:3]
    username: root
    password: "123456"
    port: 22
excludes:
  - 192.168.235.132
tail-log:
  log-path: "/opt/nginx/logs/access.log" # 日志文件路径
  whence: 2   # 读取位置: 0为从文件开头读取 1为相对当前位置 2为从文件结尾开始读取
  offset: 200 # 当whence为1时生效,offset表示从文件第200行读取

建议使用默认值keywhence、offset

注意: 实现原理为通过协程ssh至目标机读取文件并输出,本身并不会对日志文件内容进行处理, 所以读取历史内容是无序的,如有排序需求建议使用elk等专业产品。

执行

$ easyctl track tail-log -c config.yaml
Copyright © weiliang-ms 2021 all right reserved,powered by Gitbook本书发布时间: 2023-09-06 14:36:05

results matching ""

    No results matching ""