广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >Docker容器的日志如何处理
  • 178
分享到

Docker容器的日志如何处理

2024-04-02 19:04:59 178人浏览 泡泡鱼
摘要

这篇文章主要介绍“Docker容器的日志如何处理”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Docker容器的日志如何处理”文章能帮助大家解决问题。docker有

这篇文章主要介绍“Docker容器日志如何处理”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Docker容器的日志如何处理”文章能帮助大家解决问题。

docker有很多的日志插件,默认使用 JSON-file,只有使用json-file时,sudo docker logs -f 才可以显示,输入以下命令查看docker日志插件:

$ sudo docker info | grep logging

这里先说明一下,当容器运行时,docker会在宿主机上创建一个该容器相关的文件,然后将容器产生的日志转存到该文件下。docker logs -f 命令就会找到该文件内容并显示在终端上。

我们都知道docker logs -f会将所有对应的服务日志输出到终端,无论服务的部署在哪个节点上,那么我现在提出一个问题,是否每个节点对应的容器文件,都会保存该服务的完整日志备份,还是只保存该节点服务对应容器产生的日志?

因为这个问题涉及到每个节点如果都用filebeat监听宿主机的容器日志文件,那么如果每个节点的容器日志都是一个完整的备份,日志就会重复,如果只是保存该节点上容器的日志,就不会。

答案是只保留该节点上容器的日志,docker logs -f 命令只不过在overlay网络模型上走了一层协议,把在其它节点上的相同的容器日志汇聚起来。

默认使用docker的json-file,首先配置daemon:

$ sudo dockerd \
--log-driver=json-file \
--log-opt labels=servicename

启动容器需要添加如下参数:

$ sudo docker service update --label servicename=test

或者直接在docker-compose.yml中标记:

version: "3"

services:
 Go-gin-demo:
  image: chenghuizhang/go-gin-demo:v3
  ports:
   - 8081:8081
  networks:
   - overlay
  deploy:
   mode: replicated
   replicas: 3
  labels:
   servicename: go-gin-demoxxxxxxx
  logging:
   options:
    labels: "servicename"

networks:
 overlay:

在每个节点安装filebeat,并且filebeat.yml配置如下:

filebeat.prospectors:
- type: log
  paths:
  		# 容器的日志目录
   - /var/lib/docker/containers 目录中,格式如下:

{
  "log":"[gin-debug] [warning] now gin requires go 1.6 or later and go 1.7 will be required soon.",
  "stream":"stderr",
  "attrs":{
    "tag":"chenghuizhang/go-gin-demo:v3@sha256:e6c0419d64e5eda510056a38cfb803750e4ac2f0f4862d153f7c4501f576798b/mygo.2.jhqptjugfti2t4emf55sehamo/647eaa4b3913",
    "servicename":"test"
  },
  "time":"2019-01-29t10:08:59.780161908z"
}

在logstash中格式化日志:

filter {
 grok {
  patterns_dir => "/etc/logstash/conf.d/patterns"
  match => {"message" => "%{timestamp_iso8601:time}%{servicename:attr.servicename}%{docker_tag:attr.tag}"}
}

关于“Docker容器的日志如何处理”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网JavaScript频道,小编每天都会为大家更新不同的知识点。

--结束END--

本文标题: Docker容器的日志如何处理

本文链接: https://www.lsjlt.com/news/96307.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Docker容器的日志如何处理
    这篇文章主要介绍“Docker容器的日志如何处理”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Docker容器的日志如何处理”文章能帮助大家解决问题。docker有...
    99+
    2022-10-19
  • docker logs如何查看docker容器日志
    这篇文章将为大家详细讲解有关docker logs如何查看docker容器日志,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。通过docker logs命令可以查看容器的日志。命令格式:$ doc...
    99+
    2023-06-14
  • Docker容器日志如何查看和清理
    这篇文章主要介绍了Docker容器日志如何查看和清理的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Docker容器日志如何查看和清理文章都会有所收获,下面我们一起来看看吧。问题:docker容器日志随着时间变得...
    99+
    2023-07-05
  • docker如何查看运行容器日志
    这篇文章主要讲解了“docker如何查看运行容器日志”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“docker如何查看运行容器日志”吧!1. 查看运行着的容器docker ps&n...
    99+
    2023-07-05
  • docker logs-查看docker容器日志的实现
    通过docker logs命令可以查看容器的日志。 命令格式: $ docker logs [OPTIONS] CONTAINER Options: --details...
    99+
    2022-11-11
  • docker容器启动失败如何查看日志
    目录docker容器启动失败查看日志这个时候如何排查问题呢发现有更简单的命令日志查看 docker容器启动失败原因1.查看异常容器id 2.查看日志所在路径3.打开错误日志...
    99+
    2023-05-20
    docker容器启动失败 docker查看日志 docker容器启动
  • docker查看运行容器日志的步骤
    目录1. 查看运行着的容器2. 查看容器日志命令3. 查看最近10条日志, 并持续打印4. 查看某个日期至今的所有日志, 并持续打印1. 查看运行着的容器 docker p...
    99+
    2023-03-02
    docker查看运行日志 docker查看日志
  • 如何理解docker日志引擎
    这篇文章将为大家详细讲解有关如何理解docker日志引擎,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。docker原生支持众多的日志引擎,适用于各种不同的应用场景,小编对其作一个简单的说明。...
    99+
    2023-06-04
  • Python 和 Linux 容器:如何处理大量的日志输出?
    在现代软件开发中,日志记录是至关重要的。它可以帮助开发人员更好地了解他们的应用程序在不同环境下的行为。但是,当应用程序开始产生大量的日志输出时,处理和管理这些日志就变得非常困难。在本文中,我们将介绍一些使用Python和Linux容器来处...
    99+
    2023-11-09
    linux 容器 日志
  • PHP 容器如何记录日志?
    在 Web 应用程序的开发过程中,日志记录是非常重要的一部分。通过记录日志,我们可以及时发现程序中的错误和异常,并对其进行分析和解决。在 PHP 应用程序中,通常使用容器来记录日志。 容器是一种将多个对象组合在一起的技术。在 PHP 应用...
    99+
    2023-10-23
    容器 关键字 日志
  • filebeat如何收集容器日志
    要使用Filebeat收集容器日志,首先需要安装和配置Filebeat。1. 安装Filebeat:根据操作系统的不同,可以从Ela...
    99+
    2023-10-11
    filebeat
  • python如何处理日志文件
    使用python处理日志文件的方法:1.新建python项目;2.使用open()函数打开日志文件;3.使用readlines()方法遍历日志;4.使用open()函数新建文件,在通过write()方法将数据输出到文件;具体步骤如下:首先,...
    99+
    2022-10-16
  • Bash脚本和Java日志记录:如何在容器中更好地处理?
    在现代软件开发中,容器化已经成为了一种非常流行的开发方式。这种方式可以让开发人员更好地管理他们的应用程序,并且更快地部署和扩展它们。然而,在容器中处理日志和Bash脚本可能会变得更加复杂。在这篇文章中,我们将介绍如何在容器中更好地处理Ba...
    99+
    2023-11-06
    日志 bash 容器
  • Java容器如何帮助您更好地管理日志?
    Java作为一种广泛使用的编程语言,有着非常丰富的容器库。其中,Java容器可以帮助您更好地管理日志,从而提高应用程序的可维护性和可靠性。在本文中,我们将深入探讨Java容器如何帮助您更好地管理日志,并提供一些演示代码。 什么是Java容...
    99+
    2023-07-29
    容器 日志 编程算法
  • 如何配置docker-enter管理docker容器
    这篇文章将为大家详细讲解有关如何配置docker-enter管理docker容器,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。配置docker-enter管理docker...
    99+
    2022-10-19
  • 如何滚动docker中的nginx日志文件
    这篇文章主要介绍“如何滚动docker中的nginx日志文件”,在日常操作中,相信很多人在如何滚动docker中的nginx日志文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解...
    99+
    2022-10-19
  • Python 容器日志是如何与 Bash 集成的?
    在容器化应用的开发中,日志记录是非常重要的。在容器化应用中,我们通常使用 Docker 容器来运行应用。Docker 容器可以输出日志,而这些日志可以通过各种方式进行分析,比如将其存储到文件中或将其发送到远程日志收集器。本文将介绍如何使用...
    99+
    2023-10-22
    容器 日志 bash
  • ASP 中如何处理数组日志?
    在 ASP 中,数组是一种非常有用的数据类型,可以用来存储一组相关的数据。而日志则是记录应用程序中发生的事件和错误的重要组成部分。那么,如何利用数组来处理日志呢?本文将为您详细介绍。 一、创建数组 在 ASP 中,可以使用 Dim 语句来...
    99+
    2023-07-20
    bash 日志 数组
  • 如何处理日志文件丢失
    select group#,members from v$log;查看日志文件的状态select  group#,status ...
    99+
    2022-10-18
  • PHP中如何处理日志错误?
    PHP是一种广泛应用于Web开发的脚本语言,其应用场景很多,例如网站、CMS、后台管理系统等。随着业务的复杂度提高,出现错误的可能性也会增大,这时候就需要系统的错误日志记录,方便开发人员及时排查问题。以下是针对PHP中如何处理日志错误的一些...
    99+
    2023-12-18
    错误处理 日志记录 PHP错误日志
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作