青年IT男

个人从事金融行业,就职过易极付、思建科技等重庆一流技术团队,目前就职于某网约车平台负责整个支付系统建设。自身对金融行业有强烈的爱好。同时也实践大数据、数据存储、自动化集成和部署、分布式微服务、人工智能等领域。

Spring Boot 使用 Graylog 收集日志

Spring Boot 使用 Graylog 收集日志

1.Graylog介绍

Graylog是一个生产级别的日志收集系统,集成Mongo和Elasticsearch进行日志收集。其中Mongo用于存储Graylog的元数据信息和配置信息,ElasticSearch用于存储数据。

架构图如下:

img

生产环境配置图如下:

img

2.安装Graylog

在官方文档上推荐了很多种安装的方式,这里以docker-compose的方式为例,进行安装Graylog,mongo,elasticsearch。

docker-compose.yml内容如下(这里是在官网的基础上改了一下):

version: '2'services:  # MongoDB: https://hub.docker.com/_/mongo/  mongodb:    image: mongo:3  # Elasticsearch: https://www.elastic.co/guide/en/elasticsearch/reference/6.6/docker.html  elasticsearch:    image: docker.elastic.co/elasticsearch/elasticsearch-oss:6.6.1    environment:      - http.host=0.0.0.0      - transport.host=localhost      - network.host=0.0.0.0      - "ES_JAVA_OPTS=-Xms256m -Xmx256m"    ulimits:      memlock:        soft: -1        hard: -1    mem_limit: 512m  # Graylog: https://hub.docker.com/r/graylog/graylog/  graylog:    image: graylog/graylog:3.0    environment:      # CHANGE ME (must be at least 16 characters)!      - GRAYLOG_PASSWORD_SECRET=somepasswordpepper      # Password: admin      - GRAYLOG_ROOT_PASSWORD_SHA2=8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918      - GRAYLOG_HTTP_EXTERNAL_URI=http://106.13.35.42:9000/    links:      - mongodb:mongo      - elasticsearch    depends_on:      - mongodb      - elasticsearch    ports:      # Graylog web interface and REST API      - 9000:9000      # Syslog TCP      - 1514:1514      # Syslog UDP      - 1514:1514/udp      # GELF TCP      - 12201:12201      # GELF UDP      - 12201:12201/udp

其中106.13.35.42是我的外网ip,本地服务使用127.0.0.1即可。

其他方式可以查看官方文档,https://docs.graylog.org/en/3.0/pages/installation.html

3.配置Graylog

在浏览器访问http://ip:9000,如图:

img

这里默认用户名密码都是admin,进入后如图所示。

img

选择System按钮中的input,录入一个输入源,如图

img

这里以GELF UDP为例,在图中位置选择GELF UDP,选择完成后点击Launch new input,如图

img

在Node处选择自己安装的,剩下的就根据需要填写即可,如图

img

保存完成后如图,到这里就已经配置完成了。

img

4.SpringBoot日志输出到Graylog

这里分别举例Logback日志和Log4j2日志。

4.1 Logback日志

这里使用的logback-gelf向Graylog输出日志,在github上有对logback-gelf的详细使用介绍,这里只是简单举例。Github地址:https://github.com/osiegmar/logback-gelf。

新建项目,加入logback

0
1028826685@qq.com

评论已关闭。