docker 日志_Docker(13) dockercompose安装Graylog实现日志监控

一、前言

  1. Graylog官网:https://www.graylog.org/

  2. Graylog Docker安装文档:https://docs.graylog.org/en/3.3/pages/installation/docker.html

Graylog是什么?

一个比ELK轻的分布式日志管理平台...

89832421746bb5b8d8069164801bc7d4.png

二、docker-compose安装Graylog

# 环境准备
git clone https://gitee.com/zhengqingya/docker-compose.git
# Liunx系统走此路径
cd docker-compose/Liunx
# Windows系统走此路径
cd docker-compose/Windows
# 运行服务
docker-compose -f docker-compose-graylog.yml -p graylog_demo up -d

等待运行完成...43a1fe82b4d5f4971df1f0e7c4f64130.png

三、Graylog配置

访问地址:http://127.0.0.1:9001 默认登录账号密码:admin/admin02b94b263bde979f450254291e425e76.png① System -> Inputs491f90cbc3f2ac7b546bda47b29e2b5a.png② 选择GELF UDP8eac71cd89453506ccc1753dd20731f6.png③ Launch new input51fba7eeeb2820cad0edb0ad47cd49f4.png④ 如下图完成配置d4a11fe5aa5aaa455bc1e83a95523aff.png

四、SpringBoot - Logback日志案例demo

项目基于springboot2.3.1.RELEASE

1、pom.xml中新增logback-gelf依赖


<dependency>
<groupId>de.siegmargroupId>
<artifactId>logback-gelfartifactId>
<version>3.0.0version>
dependency>
2、logback.xml日志文件中新增如下配置

2a882013d6f856bb44eedfb52c092503.png

<appender name="GELF" class="de.siegmar.logbackgelf.GelfUdpAppender">
<graylogHost>127.0.0.1graylogHost>
<graylogPort>12201graylogPort>
appender>


<root level="DEBUG">
<appender-ref ref="GELF"/>
root>
3、编写定时器测试日志输出

每3秒执行1次

@Slf4j
@Component
@EnableScheduling
public class AppScheduledJobs {

@Scheduled(cron = "*/3 * * * * ?")
public void test() {
log.debug("==================================================================================");
log.error("<<<<<< error Start: 【{}】 >>>>>>", LocalDateTime.now());
log.warn("<<<<<< warn Start: 【{}】 >>>>>>", LocalDateTime.now());
log.info("<<<<<< info Start: 【{}】 >>>>>>", LocalDateTime.now());
log.debug("<<<<<< debug Start: 【{}】 >>>>>>", LocalDateTime.now());
}

}
4、启动项目

1ecbc96e77bafb1575a2b3fe9fa19ad2.png

五、Graylog中查看日志输出

http://127.0.0.1:9001/search

ba53e83e716446d7291819c540093e8b.png

六、问题

docker-compose v2和v3版本之间的编排命令有所差异,刚开始在graylog官网看的2.x的compose v2版本的编排命令直接拿来在小编的v3版本中跑,出现坑... 最后习惯性的再查看graylog最新版本的文档,重新来了一次,成功!造成耗时原因在于纠结在那一个版本上了... (害~ 年轻人不能太钻牛角尖!!!)


本文案例demo源码地址

https://gitee.com/zhengqingya/java-workspace


今日分享语句:一个人最大的智慧是透过别人的阅历而读懂自己的未来。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Docker是一种容器化技术,可以在不同的操作系统上运行应用程序。Docker Compose是一个用于定义和运行多容器Docker应用程序的工具。 以下是一些常用的DockerDocker Compose命令: ### Docker - `docker run`: 运行一个Docker容器。 - `docker ps`: 列出正在运行的Docker容器。 - `docker images`: 列出所有本地镜像。 - `docker build`: 使用Dockerfile构建一个Docker镜像。 - `docker push`: 将本地镜像上传到Docker Hub或其他Docker镜像仓库。 - `docker pull`: 从Docker Hub或其他Docker镜像仓库中下载一个镜像。 - `docker rm`: 删除一个或多个Docker容器。 - `docker rmi`: 删除一个或多个本地Docker镜像。 ### Docker Compose - `docker-compose up`: 构建并启动一个Docker Compose应用。 - `docker-compose down`: 停止并删除一个Docker Compose应用。 - `docker-compose ps`: 列出正在运行的Docker Compose服务。 - `docker-compose logs`: 查看一个Docker Compose服务的日志。 - `docker-compose exec`: 在一个Docker Compose服务中执行一个命令。 - `docker-compose build`: 构建一个Docker Compose服务的镜像。 - `docker-compose pull`: 下载一个Docker Compose服务的镜像。 ### Docker Compose配置文件 Docker Compose使用YAML格式的配置文件来定义多容器Docker应用程序。以下是一个示例配置文件: ``` version: '3' services: web: build: . ports: - "5000:5000" redis: image: "redis:alpine" ``` - `version`: 定义配置文件使用的Docker Compose版本。 - `services`: 包含一个或多个Docker容器服务的列表。 - `build`: 构建一个Docker镜像。 - `image`: 使用现有的Docker镜像。 - `ports`: 映射容器端口到主机端口。在此示例中,容器的5000端口将映射到主机的5000端口。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值