是一个比ELK更轻的框架,只需要在其中一台服务器安装,其他服务器配置一下就可以了,相对来说比较简单

1 前提

安装,可以参考我的文章《- 安装——最详细版》

2 在的管理后台配置udp

GrayLog支持中文吗_graylog_GrayLogServer

3 部署的项目

在-.yml中配置即可

version: '3'
services:
  euraka:
    build: /home/spring-java/eureka
    environment:
      TZ: Asia/Shanghai
    logging:
      #driver: "json-file"
      driver: "gelf"
      options:
        #max-size: "50m"
        #max-file: "8"
        gelf-address: "udp://172.16.11.15:12201"
        tag: "log-eureka"
    ports:
      - 8081:8081
    expose:
      - 8081
    volumes:
      - "/application/logs/eureka:/application/logs/business-discovery"

上面的tag用于标记日志的分类,用于筛选日志用

配置成: “gelf”之后,容器里面不会额外存日志,日志会发送到服务器

但进入容器后还是可以查看到日志,这是为什么呢?

其实容器里面并没额外开辟磁盘,而是共用了的磁盘,

当我们把主机的日志删除//logs/,

容器里面的日志也没有了,说明容器自己没有存日志

: “gelf”设置为时,max-file max-size 不能放开

只有: “json-file”时才可以放开

4 查看日志

GrayLogServer_graylog_GrayLog支持中文吗

可以将和tag也显示出来,便于筛选

GrayLog支持中文吗_graylog_GrayLogServer

graylog_GrayLog支持中文吗_GrayLogServer

graylog_GrayLogServer_GrayLog支持中文吗

未完:

上面的配置可以记录到每一个的日志,以为单位

如果是部署的,多个项目同时部署在一个上,此时tag只有一个,如何来区分每个项目的日志呢?这个问题待研究,网友们如果知道的可以在评论区贡献一下哦

如的配置:

version: '3'
services:
  tomcat:
 #   restart: always
 #   build: /home/spring-java/tomcat85
    build:
      context: ./
      dockerfile: Dockerfile
    container_name: tomcat8
    logging:
      #driver: "json-file"
      driver: "gelf"
      options:
        #max-size: "50m"
        #max-file: "8"
        gelf-address: "udp://172.16.11.15:12201"
        tag: "log-tomcat"
    environment:
      TZ: Asia/Shanghai
      JAVA_OPTS: -Xms1024m -Xmx4096m  -XX:+UnlockCommercialFeatures -XX:+FlightRecorder
    volumes:
      - ./conf:/usr/local/tomcat/conf
      - ./logs:/usr/local/tomcat/logs
      - ./webapps:/usr/local/tomcat/webapps
    ports:
      - 8088:8088
    expose:
      - 8088

———END———
限 时 特 惠: 本站每日持续更新海量各大内部创业教程,永久会员只需109元,全站资源免费下载 点击查看详情
站 长 微 信: nanadh666

声明:1、本内容转载于网络,版权归原作者所有!2、本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。3、本内容若侵犯到你的版权利益,请联系我们,会尽快给予删除处理!