Log.io是一个很小的简单而有效的应用程序基础上的Node.js和Socket.io之上,这使得监控Linux服务器通过Web界面屏幕小部件登录实时文件。
Log.io - 实时服务器日志监视
本教程将指导你如何可以安装并实时监控任何本地日志文件与RHEL / CentOS 7 / 6.x的安装通过配置Log.io收割机文件,以监视任何本地更改到日志文件Log.io。
第1步:添加Epel存储库
1. CentOS的EPEL库提供的Node.js和NPM的二进制包- 节点打包模块 。 通过发出以下命令安装Epel存储库。
在RHEL / CentOS 7上
# yum install http://fedora.mirrors.telekom.ro/pub/epel/7/x86_64/e/epel-release-7-2.noarch.rpm
在RHEL / CentOS 6上
--------------------- On RHEL/CentOS 6.x - 32 Bit --------------------- # yum install http://fedora.mirrors.telekom.ro/pub/epel/6/i386/epel-release-6-8.noarch.rpm --------------------- On RHEL/CentOS 6.x - 64 Bit --------------------- # yum install http://fedora.mirrors.telekom.ro/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
安装Epel存储库
2.您添加的系统上EPEL回购交易后,通过做运行以下命令的系统升级。
# yum update
第2步:安装Node.js和NPM软件包
3. Node.js的是一个Javascript服务器端编程平台,它允许你创建与后端功能的网络应用。NPM(节点包管理器)实际上是对Node.js的包管理器 因此,在下一步继续前进,通过你的系统上安装的Node.js和NMP二进制YUM包管理器通过发出以下命令。
# curl --silent --location https://rpm.nodesource.com/setup_5.x | bash - # yum install -y nodejs
在CentOS 7中安装Node js
第3步:安装和配置Log.io应用程序
4. Log.io应用程序必须在系统上通过NPM通过指定一个有效的本地系统用户,安装必须通过它发生的安装。 虽然你可以使用任何有效的系统用户安装Log.io,我个人建议安装通过root用户或其他系统用户具有root权限的应用程序。
之所以使用这种方法的缺点是Log.io必须能够访问本地读取日志文件和与非权限root权限的用户通常无法访问和读取一些重要的日志文件。
因此,使用root帐户登录并通过root帐户安装Log.io应用程序,方法是发出以下命令(如果您使用其他用户,请将root帐户替换为您的系统用户)。
# npm install -g log.io --user “root”
安装Log.io监视
5.应用程序已经安装完毕后改变你的工作目录Log.io文件夹,这是隐藏的,做一个目录列表可视化文件夹的内容,以进一步配置应用程序。
# pwd [Make sure you are on the right path] # cd .log.io/ # ls
Log.io文件
6.现在是时候来配置Log.io以实时监控本地日志文件。 让我们来了解Log.io的工作原理。
- 收割机文件手表在其配置中声明在指定的本地日志文件的变化,通过TCP socket.io将其输出
协议进一步邮件发送到Log.io本地服务器或它的IP地址(收割机上指定广播到所有log.io监听服务器0.0.0.0地址)宣布任何其他远程服务器-文件harvester.conf - Log.io服务器在所有网络接口上绑定(如果没有在log_server.conf文件中指定),并等待来自本地或远程收集器节点的消息,并将其输出发送到log.io Web服务器(0.0.0.0表示它等待消息从任何本地或远程收割机)文件log_server.conf
- Log.io Web服务器绑定所有网络接口,监听端口28778和流程的Web客户端的连接,并输出它从log.io服务器收到内部消息-文件web_server.conf
编辑,默认情况下只监控Apache日志文件,并替换节点名称的语句,以配合您的主机名和你想要监控内部日志文件(在这种情况下,我监视多个日志定义logStreams报表首开harvester.conf文件文件,例如审计,消息和安全日志)。 使用以下文件摘录作为指南。
# nano harvester.conf
Harvester文件摘录。
exports.config = { nodeName: "pxe-server", logStreams: { audit: [ "/var/log/audit/audit.log" ], messages: [ "/var/log/messages" ], secure: [ "/var/log/secure" ] }, server: { host: '0.0.0.0', port: 28777 } }
Log.io Harvester配置
此外,如果你不需要收割机输出发送到远程服务器Log.io不改变服务器上的语句行主机只能在本地通过环回地址修改0.0.0.0地址发送它的输出(127.0.0.1)。
7.出于安全原因,如果您不希望远程收割机输出到本地服务器Log.io开放log_server.conf文件并替换0.0.0.0地址与回送地址(127.0.0.1)。
# nano log_server.conf
配置日志
8.其他安全功能,如登录凭据,HTTPS或限制基础上的IP,以Log.io Web服务器可以在Web服务器端的应用。 对于本教程,我将只使用作为安全措施只是凭据登录。
所以,开web_server.conf文件,删除所有斜线和星号取消对整个权威性声明和替换用户 ,并相应地传递指令底部截图的建议。
# nano web_server.conf
配置Log.io监控
第4步:添加防火墙规则并启动Log.io应用程序
9.为了获得对Log.io服务器Web访问在RHEL / CentOS 7防火墙添加规则发出以下命令来打开TCP端口28778。
# firewall-cmd --add-port=28778/tcp --permanent # firewall-cmd --reload
在防火墙上打开Log.io端口
注 :RHEL / CentOS的6.x的用户可以在防火墙的iptable打开端口28778。
第5步:启动Log.io应用程序并进入Web Interface
10.为了启动Log.io日志监控应用程序确保当前的工作目录是root用户的主.log.io和按以下顺序启动应用程序中使用以下命令。
------------ First start server, put it in background and press Enter key ------------ # log.io-server & ------------ Start log harvester in background ------------ # log.io-harvester &
启动Log.io服务
11.服务器后已经启动,打开浏览器,输入使用的URL地址和一个提示,要求你的登录凭据应该出现的HTTP协议其次是28778端口号,您的服务器的IP。
输入您的用户名和密码的第8步配置为进一步开展和应用Log.io现在应该在你的浏览器呈现实时监控日志文件可见。
http://192.168.1.20:28778
登录到Log.io监视
使用Log.io的实时日志监视
在Web界面上添加新屏幕,并相应地组织流或节点。
12.要停止Log.io应用程序中运行以下命令。
# pkill node
第6步:创建Log.io管理脚本
13.为了使用一个管理应用程序Log.io用三层交换机的命令( 启动 , 停止和状态 )创建的/ usr / local / bin中的可执行文件目录下面的脚本命名log.io并追加执行权限给该脚本。
# nano /usr/local/bin/log.io # chmod +x /usr/local/bin/log.io
将以下摘录添加到此脚本文件。
#!/bin/bash start() { echo "Starting log.io process..." /usr/bin/log.io-server & /usr/bin/log.io-harvester & } stop() { echo "Stopping io-log process..." pkill node } status() { echo "Status io-log process..." netstat -tlp | grep node } case "$1" in start) start ;; stop) stop ;; status) status ;; *) echo "Usage: start|stop|status" ;; Esac
Log.io启动脚本
14.要启动,停止或查看与root帐户(或Log.io应用程序已安装在用户),只是运行下面的命令来轻松管理应用Log.io状态登录。
# log.io start # log.io status # log.io stop
管理Log.io脚本
就这样! 在我看来,Log.io是一款优秀且有效的Web应用程序来监视本地或远程服务器日志文件是实时的,并获得什么是在系统,尤其涉及调试服务器的问题会在内部进行了展望时,系统往往无法响应或崩溃,而不需要使用控制台。