介绍

日志管理系统,大家普遍知道的都是ELK的解决方案,但是ELK要实现认证和一些状态监控,需要安装x-pack插件包,但是x-pack是要收费的,当然可以选择破解,但是比较麻烦。而且ELK是一个解决方案,在其中包含很多软件,
不单elasticsearch,kibana,logstash,还需要redis或kafaka,收集日志还需要不同的beats,整个结构非常复杂,且占用较多资源,要想完全搞懂需要较长时间。但是很多时候,使用ELK的成本太高,可以使用一些替代方案,
除了ELK还有很多日志管理工具,其中的一个很不错的日志方案:Graylog,Graylog是一个可以跟ELK相提并论的日志管理的后起之秀,一个开源的 log 收容器,背后的储存是搭配 mongodb,而搜寻引擎则由 elasticsearch 提供,
自身集成web端,不需要单独部署,目前最新为3.0版本。

graylog官网官方操作文档如下:

Extended Search — Graylog 3.0.2 documentation

结构组成

单机

集群

完整架构图

Docker 安装

请先安装Docker

Docker 离线安装_ 说不如做-CSDN博客

docker-compose部署使用

version: '3'
services:# MongoDB: https://hub.docker.com/_/mongo/mongo:image: mongo:3networks:- graylog# Elasticsearch: https://www.elastic.co/guide/en/elasticsearch/reference/6.x/docker.htmlelasticsearch:image: docker.elastic.co/elasticsearch/elasticsearch-oss:6.8.10environment:- http.host=0.0.0.0- transport.host=localhost- network.host=0.0.0.0- "ES_JAVA_OPTS=-Xms512m -Xmx512m"ulimits:memlock:soft: -1hard: -1deploy:resources:limits:memory: 1gnetworks:- graylog# Graylog: https://hub.docker.com/r/graylog/graylog/graylog:image: graylog/graylog:3.3environment:# CHANGE ME (must be at least 16 characters)!- GRAYLOG_PASSWORD_SECRET=somepasswordpepper# Password: admin- GRAYLOG_ROOT_PASSWORD_SHA2=8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918- GRAYLOG_HTTP_EXTERNAL_URI=http://127.0.0.1:9000/networks:- graylogdepends_on:- mongo- elasticsearchports:# 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
networks:graylog:driver: bridge

演示

以admin 登录http://IP_adress:9000/     注:IP_adress是服务器真实的IP地址

账号:admin  密码:admin

graylog 功能组成

http方式测试

curl -XPOST http://IP_adress/gelf  -p0 -d '{"short_message":"Hello there", "host":"example.org", "facility":"test", "_foo":"bar"}'

示例:

curl -XPOST http://192.168.179.191:12201/gelf -p0 -d '{"short_message":"Hello there", "host":"example.org", "facility":"test", "_foo":"bar"}'

logback.xml 接入测试

引入pom

<!--logback gelf日志收集-->
<dependency><groupId>biz.paluch.logging</groupId><artifactId>logstash-gelf</artifactId><version>1.11.1</version>
</dependency>

logback.xml增加如下配置

<springProperty scope="context" name="APP_NAME" source="spring.application.name"/>
<springProperty scope="context" name="GROYLOG_IP" source="groylog.ip"/>
<springProperty scope="context" name="GROYLOG_PORT" source="groylog.port"/>
<springProperty scope="context" name="GROYLOG_MAXIMUMMESSAGESIZE" source="groylog.maximumMessageSize"/><appender name="GELF" class="biz.paluch.logging.gelf.logback.GelfLogbackAppender"><host>udp:${GROYLOG_IP}</host><!--graylog 服务器ip--><port>${GROYLOG_PORT}</port><!--graylog udp端口--><version>1.1</version><facility>${APP_NAME}</facility><extractStackTrace>true</extractStackTrace><filterStackTrace>true</filterStackTrace><mdcProfiling>true</mdcProfiling><timestampPattern>yyyy-MM-dd HH:mm:ss,SSSS</timestampPattern><maximumMessageSize>${GROYLOG_MAXIMUMMESSAGESIZE}</maximumMessageSize><!-- This are fields using MDC --><mdcFields>mdcField1,mdcField2</mdcFields><dynamicMdcFields>mdc.*,(mdc|MDC)fields</dynamicMdcFields><includeFullMdc>true</includeFullMdc>
</appender><root level="INFO"><appender-ref ref="GELF"/>
</root>

application.properties 配置文件增加如下配置:

groylog.ip=192.168.179.191
groylog.port=12201
groylog.maximumMessageSize=8192

示例:

log4j 接入测试

引入pom

 <dependency><groupId>org.graylog2.log4j2</groupId><artifactId>log4j2-gelf</artifactId><version>1.3.1</version>
</dependency>

log4j2-spring.xml 配置

<GELF name="gelf" server="192.168.179.191" port="12201" hostName="cc-test" protocol="UDP"><PatternLayout pattern="%logger{36} - %msg%n"/><Filters><Filter type="MarkerFilter" marker="FLOW" onMatch="DENY" onMismatch="NEUTRAL"/><Filter type="MarkerFilter" marker="EXCEPTION" onMatch="DENY" onMismatch="ACCEPT"/></Filters><!-- Additional fields --><KeyValuePair key="foo" value="bar"/><KeyValuePair key="jvm" value="${java:vm}"/>
</GELF><Root level="info"><AppenderRef ref="gelf"/>
</Root>

日志收集 Graylog相关推荐

  1. SpringBoot整合Graylog做日志收集

    日志收集折腾过程 ELK 之前整合过ELK做日志采集,就是Elasticsearch + Logstash + Kibana: Elasticsearch:存储引擎,存放日志内容,利于全文检索 Log ...

  2. html打印日志_Graylog(四)使用Log4j2发送日志到Graylog

    如需查看Graylog安装教程,请点击链接:Graylog安装教程 如需查看创建GELF UDP收集器教程,请点击链接:创建GELF UDP收集器 如需查看Logback发送日志到Graylog,请点 ...

  3. 日志收集平台Graylog2以及Nxlog的安装与配置(基于docker)

    graylog 安装配置 OS:CentOS7 64 基于Docker的安装 graylog 官网 docker 安装 Persist log data mkdir -p /graylog/confi ...

  4. 分布式日志系统Graylog、Loki及ELK的分析和对比

    更多内容关注微信公众号:fullstack888 日志系列: 企业级日志平台新秀Graylog,比ELK轻量多了 日志系统新贵Loki,比ELK轻量多了 1. 为什么需要集中的日志系统? 在分布式系统 ...

  5. 日志管理 GrayLog VS ELK

    Graylog开源版官网: https://www.graylog.org/ Graylog 文档:https://docs.graylog.org/docs GRAYLOG 的架构方向 Graylo ...

  6. Kubernetes 日志收集的原理,看这一篇就够了

    准备 关于容器日志 Docker 的日志分为两类,一类是 Docker 引擎日志:另一类是容器日志.引擎日志一般都交给了系统日志,不同的操作系统会放在不同的位置. 本文主要介绍容器日志,容器日志可以理 ...

  7. log_pipe日志收集分析系统介绍

    一.简要介绍 log_pipe是一个高性能的日志收集分析系统,从13年11月第一版上线以来,已经在阿里内部有了广泛的使用,目前在日志最为繁忙的CDN节点内部已经部署超过20个节点,用于对CDN的访问日 ...

  8. 看不到日志_Kubernetes中常用的日志收集方案

    在kubernetes中对日志的处理方式叫做cluster-level-logging,即这个日志处理系统跟容器,Pod,Node的生命周期无关,也就是无论是容器挂了,Pod被删除了还是Node宕机了 ...

  9. asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程...

    最近在学习张善友老师的NanoFabric 框架的时了解到Exceptionless : https://exceptionless.com/ !因此学习了一下这个开源框架!下面对Exceptionl ...

  10. Nginx容器日志收集方案fluentd+elasticsearch+kilbana

    容器技术在发展到今天已经是相当的成熟,但容器不同于虚拟机,我们在使用容器的同时也有很多相关的技术问题需要解决,比如:容器性能监控,数据持久化,日志监控与分析等.我们不能像平时使用虚拟机一样来管理容器, ...

最新文章

  1. device刷机包 适合的android_nexus6 刷 LineageOS 17.1 实战
  2. win10系统下cmd输入一下安装的软件命令提示拒绝访问解决办法
  3. android系统源代码添加新产品的支持
  4. 肤色检测算法 - 基于二次多项式混合模型的肤色检测
  5. ML之nyoka:基于nyoka库利用LGBMClassifier模型实现对iris数据集训练、保存为pmml模型并重新载入pmml模型进而实现推理
  6. IOS 控件 - 去除 tableView 多余的横线
  7. 分类器是如何做检测的?——CascadeClassifier中的detectMultiScale函数解读
  8. vba 自动排序_给VBA字典键值排序,并提取需要的数据
  9. 生产活动目录不宜做快照,克隆,直接备份VMDK;
  10. Oracle项目管理系统之质量保证体系
  11. 超级记忆/图像数字记忆 110位数字图像转换表 21-30
  12. Dell Precision M4800 VoodooPS2Controller 键盘/触控驱动修复过程
  13. python 画图自定义x轴刻度值
  14. 一个基于css的简单悬浮按钮
  15. 软骨鱼是WordPress构建SaaS平台的最优解决方案
  16. python生成ppt_实战 | Python自动生成PPT分析报告
  17. Python的静态成员变量和非静态成员变量
  18. 最近在玩微博,觉得微博学习到了一点东西,分享下
  19. vNext中ABP的Exception的Http中的Status Code
  20. 面试官:Zookeeper集群怎么搭建?

热门文章

  1. GNS3安装和使用教程
  2. ipython怎么安装_如何装ipython
  3. 在IntelliJ IDEA下编辑jspx文件(转)
  4. 计算机复制教程,教你如何提升电脑文件复制速度的详细教程
  5. 智能制造解决方案举例 智能制造解决方案落地实例
  6. python对文件进行zip和rar格式的压缩和解压缩(亲测,可用)
  7. DirectX9.0b SDK下载地址及安装说明
  8. 浏览器全屏fullScreen
  9. fitbit手表中文说明书_fitbit感觉智能手表动手
  10. 09-10c语言试卷a,09C语言试卷A-B(试题).doc