您的位置:首页 > 其它

Ubuntu 16.04 Graylog2日志服务安装教程

2017-10-19 13:28 633 查看

前言

本文基于Ubuntu 16.04系统。

Graylog2 -具有报警选项的可插入日志和事件分析服务器。

Graylog2官网:https://www.graylog.org/

Graylog2及相关

所需环境:

1. Java (>= 8) Ubuntu 16.04 配置JDK及环境变量

2. MongoDB (>= 2.4)

3. Elasticsearch (>= 2.x)

Graylog2官网安装教程:http://docs.graylog.org/en/2.3/pages/installation/operating_system_packages.html

具体的详细安装过程,我就不在详细写了,网上各种教程多的是,无非就是复制粘贴。

推荐这篇http://blog.topspeedsnail.com/archives/6670,非常详细易懂.

如果在浏览器输入:http://your_ip_or_doamin:9000 能看到Graylog页面,说明安装成功!

注意:

配置Graylog过程中的IP就是服务器公用IP或者域名,如果你没有服务器,可以直接填写127.0.0.1,即本机IP,监听本机的日志。此处我填写的就是127.0.0.1。

rsyslog服务推送

Ubuntu系统自带rsyslog服务无需安装,只需要配置一下即可。

1.浏览器打开Graylog页面,选择System—>inputs



2.Select input 选择最后一项 Syslog UDP,然后Launch new input

3.填写对于Title和Port项,然后save

注意:这里port虽然Syslog默认是514,但是由于Ubuntu权限问题,最好大于1024,我们这里填写为5140.



4.更改syslog配置文件

终端输入:
sudo vim /etc/rsyslog.conf


添加:

*.* @127.0.0.1:5140;GRAYLOGRFC5424


注意修改为Graylog2中配置的IP加上面的端口号。

5.重启rsyslog服务

终端输入:
sudo systemctl restart rsyslog


6.效果查看

浏览器的Graylog页面,在刚才的inputs界面,在刚刚创建的Inputs项上选择show received messages

如果看到如下图,则说明rsyslog配置成功!如果没有请注意检查ip与port是否与填写的一致。



此时Graylog正在检测本机系统的一些日志情况。

Graylog2+log4j监听Java程序

Java程序运行于IDEA。

Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。

配置log4j的java环境

要在java程序中使用log4j,首先要下载对应的的jar。

官方地址下载:http://logging.apache.org/log4j/1.2/download.html

新建一个IDEA Java程序,然后将jar导入该工程。

然后在src目录下新建文件log4j.properties,编辑内容为:

log4j.rootLogger=Debug,CONSOLE,syslog
log4j.appender.syslog=org.apache.log4j.net.SyslogAppender
log4j.appender.syslog.SyslogHost=127.0.0.1
log4j.appender.syslog.Facility=local1
log4j.appender.syslog.header=true
log4j.appender.syslog.layout=org.apache.log4j.PatternLayout
log4j.appender.syslog.layout.ConversionPattern=%5p | %c{1}-%M [%d{yyyy-MM-dd HH:mm:ss}] - %m%n

log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p [%t] %c %x - %m%n


注意:log4j.appender.syslog.SyslogHost=127.0.0.1 这一项要修改为Graylog2对应的IP。

运行Java程序

代码如下:

import org.apache.log4j.Logger;
public class Main {

private static final Logger logger = Logger.getLogger(Main.class);

public static void main(String[] args) {
logger.info("这是一个info");
logger.error("这是一个error");
logger.debug("这是一个debug");
logger.warn("这是一个warn");
System.out.println(123);
}
}


浏览器进入Graylog界面,点击Search,如下:



如能看到Java程序中输出的日志信息。则配置成功!

结语

至此,你可以在浏览器使用Graylog查看系统(或者服务器)的日志文件,也可以查看Java程序相关的日志。

还可以使用对应功能筛选,管理日志信息。

可视化图形界面,方便舒爽!

参考:

如何在Ubuntu 16.04上使用Graylog 2管理日志

Graylog2+rsyslog+log4j 全过程日志管理环境搭建

Graylog2日志服务安装配置

IDEA下Log4j使用教程
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: