你现在已经在CentOS 7系统中成功安装了Git(版本1.8.3.1-25.el7_9),同时自动安装了rsync、perl-Error等依赖包,并且通过git --version验证了安装结果。结合你之前的日志采集需求,我会补充如何让Filebeat采集Git相关日志 ,以及如果需要升级Git版本的方法(因为1.8.3.1是CentOS 7默认的旧版本,部分现代Git功能不支持)。
一、采集Git相关日志(结合Filebeat)
如果需要监控Git的操作日志(如用户的git clone/commit/push操作),可以通过Filebeat采集以下两类日志:
1. 采集Git命令的系统操作日志(/var/log/secure或/var/log/messages)
用户执行Git命令的操作会被记录在系统日志中,配置Filebeat采集这类日志:
yaml
# 编辑Filebeat配置文件 /etc/filebeat/filebeat.yml
filebeat.inputs:
- type: filestream
enabled: true
paths:
- /var/log/secure # 包含用户执行git命令的认证/操作日志
- /var/log/messages # 系统级别的git相关日志
tags: ["git-system-log"]
fields:
log_source: "git-operation"
然后在Kibana中过滤包含git关键词的日志:
message: "git" AND host.hostname: "mongodb01"
2. 采集Git仓库的提交日志(自定义日志)
如果需要采集具体Git仓库的提交日志,可以通过Git的log命令输出到日志文件,再用Filebeat采集:
bash
# 进入Git仓库目录,将提交日志输出到指定文件(定时执行,如每小时)
cd /data/git-repo
git log --pretty=format:"%h %an %ad %s" --date=iso >> /var/log/git/commit.log
# 配置Filebeat采集该日志
filebeat.inputs:
- type: filestream
enabled: true
paths:
- /var/log/git/commit.log
tags: ["git-commit-log"]
fields:
log_source: "git-repo-commit"
二、升级Git版本(CentOS 7下从1.8.3.1升级到最新稳定版)
CentOS 7默认的Git 1.8.3.1功能有限(如不支持git switch、部分GitHub功能),可以通过IUS仓库升级到最新版本:
步骤1:安装IUS仓库(第三方可靠仓库)
bash
# 安装epel-release依赖
yum install -y epel-release
# 安装IUS仓库
yum install -y https://repo.ius.io/ius-release-el7.rpm
步骤2:卸载旧版本Git(保留配置)
bash
yum remove -y git
步骤3:安装新版Git(如2.43.0)
bash
# 安装git243(IUS仓库的新版Git包名)
yum install -y git243
# 验证版本
git --version # 输出git version 2.43.0
步骤4:配置Git全局参数(可选)
bash
# 设置用户名和邮箱(提交代码时使用)
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
# 查看配置
git config --list
三、关键说明
- 依赖包说明 :安装Git时自动安装的
rsync是