当前位置: 首页 > 工具软件 > nxlog > 使用案例 >

nxlog日志采集

上官德寿
2023-12-01

一、nxlog 简介

  nxlog 是一个模块化、多线程、高性能的日志管理解决方案,支持多平台,可实现各类操作系统及其中间件的日志采集和管理

二、nxlog官网下载地址

2.1 社区版官网下载地址:NXLog Community Edition - Downloads | nxlog.co

2.2  下载相应的系统版本

1) Centos 6.x

wget --no-check-certificate https://nxlog.co/system/files/products/files/348/nxlog-ce-2.10.2150-1_rhel6.x86_64.rpm

2)Centos 7.x

wget --no-check-certificate https://nxlog.co/system/files/products/files/348/nxlog-ce-3.0.2272-1_rhel7.x86_64.rpm

3)Centos 8.x

wget --no-check-certificate https://nxlog.co/system/files/products/files/348/nxlog-ce-3.0.2272_rhel8.x86_64.rpm

4) Ubuntu 18.04

wget  --no-check-certificate https://nxlog.co/system/files/products/files/348/nxlog-ce_3.0.2272_ubuntu_bionic_amd64.deb

三、安装nxlog及依赖环境

3.1 Centos 6.x 

yum install apr  libdbi* -y    #安装依赖环境(yum源不可用转步骤四)
rpm -ivh nxlog-ce-2.10.2150-1_rhel6.x86_64.rpm  #安装rpm包

3.2 Centos 7.x 

yum install apr libdbi  libpython3.6m.so.1.0 -y  #安装依赖环境
rpm -ivh  nxlog-ce-3.0.2272-1_rhel7.x86_64.rpm  #安装rpm包

3.3 Centos 8.x 

yum install apr libdbi*  libperl.so.5.26  -y  #安装依赖环境(yum源不可用转步骤四)
rpm -ivh  nxlog-ce-3.0.2272-1_rhel7.x86_64.rpm  #安装rpm包

3.4 Ubuntu 18.04

sudo dpkg -i nxlog-ce_3.0.2272_ubuntu_bionic_amd64.deb  #安装deb包,提示需依赖环境
sudo apt-get --fix-broken install  #解决并安装依赖环境
sudo dpkg -i nxlog-ce_3.0.2272_ubuntu_bionic_amd64.deb #再次安装deb包

* Centos6.x 8.x 官方yum源已下线。如系统本身yum源失效, 不能安装依赖环境,需更换第三方源或搭建本地yum源。

四、解决Centos6.x 8.x yum源失效问题

4.1 Centos6.x 更换阿里云yum源

curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-6.10.repo  #更换阿里yum源
yum clean all   #清除缓存
yum makecache  #重新建立缓存

4.2 Centos 8.x  更换阿里云yum源

mv /etc/yum.repos.d /etc/yum.repos.d.bak  #备份原有yum源目录
mkdir -p /etc/yum.repos.d                #创建新的yum源目录
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo   #更换阿里yum源
curl -o /etc/yum.repos.d/epel-archive-8.repo https://mirrors.aliyun.com/repo/epel-archive-8.repo    #添加阿里epel yum源
yum clean all   #清除缓存
yum makecache  #重新建立缓存

五、nxlog 服务管理及卸载

5.1 Centos 6.x

service nxlog start    #启动
service nxlog stop    #停止
service nxlog restart  #重启
service nxlog status  #查看运行状态

5.2 Centos 7.x 8.x

systemctl start nxlog     #启动
systemctl stop nxlog     #停止
systemctl restart nxlog   #重启
systemctl status nxlog   #查看运行状态

5.3 Ubuntu

sudo systemctl start nxlog   #启动
sudo systemctl stop nxlog   #启动
sudo systemctl restart nxlog  #重启
sudo systemctl status nxlog   #查看运行状态

5.4 配置及日志文件

/etc/nxlog.conf          #Centos6.x      默认配置文件路径
/etc/nxlog nxlog.conf     #Centos7.x 8.x ubuntu 默认配置文件路径 
/var/log/nxlog/nxlog.log   #nxlog本身日志默认存放路径,用于调试和排错

5.6 卸载nxlog

yum remove 'nxlog-*'  -y  #Centos6.x 7.x 8.x
sudo apt-get remove '^nxlog*' -y  #Ubuntu

六、防火墙放行nxlog服务

6.1 Centos 6.x

iptables -I INPUT -p udp --dport 514 -j ACCEPT    #放行udp 514端口
iptables -I OUTPUT -p udp --sport 514 -j ACCEPT    #放行udp 514端口
service iptables save            #保存防火墙规则
service iptables restart            #重启防火墙

 6.2 Centos 7.x 8x

firewall-cmd --zone=public --add-port=514/udp --permanent   #放行udp 514端口
firewall-cmd --reload                   #重新加载防火墙策略
firewall-cmd --zone=public --list-ports     #查看放行的端口
systemctl restart firewalld               #重启防火墙

6.3 Ubuntu

udo ufw allow 514   #放行udp 514端口
sudo ufw status     #查看放行的端口及规则
sudo ufw reload     #重新加载防火墙策略

七、nxlog 采集Apache错误日志示例

编辑nxlog配置文件   在Modules模块  <Input apache_error_in>  </Input>   和 <Output Apache_error_out>  中分别填写apache错误日志文件路径和输出的日志服务器地址及端口。Routes模块添加Path参数。 (红色部分名称自定义)

########################################
# Global directives                    #
########################################
User nxlog
Group nxlog

LogFile /var/log/nxlog/nxlog.log
LogLevel INFO
Nocache True
########################################
# Modules                              #
########################################
<Extension _syslog>
    Module      xm_syslog
</Extension>


<Input apache_error_in>
    SavePos  false
    Readfromlast false
    Module  im_file
    File        "/var/log/apache/error.log"
</Input>


<Output apache_error_out>
    Module  om_tcp
    Host    10.19.21.100
    Port    514
</Output>

########################################
# Routes                               #
########################################
#
<Route apache_error_route>
    Path    apache_error_in => apache_error_out
</Route>

 类似资料: