当前位置: 首页 > 知识库问答 >
问题:

docker容器内的数据日志集成

华子航
2023-03-14

datadog是新手,所以我真的很困惑。第一种配置快速简单。然而,由于我想要一些特定于应用程序的图表,我目前的情况似乎不像以前那么清楚。

我们有一台带有多台docker机器的主机,每个服务一台:-nginx-varnish-html" target="_blank">apache-database(mysql)

我们在主机内部安装了datadog客户端,还安装了docker集成,一切正常。我不知道如何从apache或varnish或docker内部的任何服务获取度量。例如,在varnish中阅读文档时,您必须执行:

$ sudo usermod -G varnish -a dd-agent

但是,我应该在哪里运行命令?dd-agent用户只存在于主机中,而不存在于docker容器中。清漆正好相反。

我是否需要在每个容器上安装代理?

它会被视为定价的另一个主机吗?

在mysql的情况下,我只需要配置代理:

init_config:

instances:
  - server: localhost
    user: datadog
    pass: <UNIQUEPASSWORD>

    tags:
        - optional_tag1
        - optional_tag2
    options:

但是,由于我的主机和容器处于不同的路径中,我是否应该使用代理创建一个新的docker容器,以便它可以访问db容器(更改服务器字段)?它是否又被视为另一个主机?

共有1个答案

石正奇
2023-03-14

在大多数情况下,datadog代理通过连接到URLendpoint从集成中检索指标。nginx、mysql等服务就是这种情况。

这意味着您只能在主机上运行一个数据代理,并将其配置为侦听从每个容器公开的服务的URLendpoint。

例如,假设使用以下命令运行mysql docker容器:

docker run -d \
  --name mysql \
  -p 3306:3306 \
  -e MYSQL_ROOT_PASSWORD=secret \
  -e MYSQL_DATABASE=mySchema \
  mysql

您可以在mysql.yaml代理配置中指示主机上运行的代理连接到容器IP:

init_config:

instances:
- server: <container IP>
    user: datadog
    pass: secret

    tags:
        - optional_tag1
        - optional_tag2
    options:

Varnish略有不同,因为代理使用varnishstat二进制文件检索度量。根据示例模板:

为了支持监控作为Docker容器运行的Varish实例,我们需要将命令(varnishstat)包装为在运行的容器上html" target="_blank">执行docker exec的脚本。

为此,在主机上,为容器创建一个包装脚本:

echo "/usr/bin/docker exec varnish_container_name varnishstat "$@"" > /home/myuser/docker_varnish

然后在varnish中指定脚本位置。yaml代理配置:

init_config:

instances:
    - varnishstat: /home/myuser/docker_varnish
 类似资料:
  • 我的目标:我需要收集从运行的tomcat容器到Filebeat容器的tomcat日志。 问题:我不知道如何从Tomcat容器中获取收集的日志文件。 到目前为止我尝试过的内容:我尝试创建一个docker卷并将tomcat日志添加到该卷中,并从filebeat容器访问该卷,但没有成功。 docker-containers:包含3个主子目录(Tomcat、Nginx和Postgres)。ENV文件和do

  • 本文向大家介绍Docker 容器日志分析,包括了Docker 容器日志分析的使用技巧和注意事项,需要的朋友参考一下 查看容器日志 先使用  docker run -it --rm -d -p 80:80 nginx:1.15.8-alpine 命令启动一个nginx容器。如果没有异常,会得到容器ID如  d2408a7931c95a3a83ffeca2fba887763cf925a67890ef3

  • 「Allen 谈 Docker 系列」 DaoCloud 正在启动 Docker 技术系列文章,每周都会为大家推送一期真材实料的精选 Docker 文章。主讲人为 DaoCloud 核心开发团队成员 Allen(孙宏亮),他是 InfoQ 「Docker 源码分析」专栏作者,已出版《Docker 源码分析》一书。Allen 接触 Docker 近两年,爱钻研系统实现原理,及 Linux 操作系统。

  • 本文向大家介绍详解Docker容器的日志处理,包括了详解Docker容器的日志处理的使用技巧和注意事项,需要的朋友参考一下 Docker有很多的日志插件,默认使用 json-file,只有使用json-file时,sudo docker logs -f 才可以显示,输入以下命令查看docker日志插件: 这里先说明一下,当容器运行时,docker会在宿主机上创建一个该容器相关的文件,然后将容器产生

  • 问题内容: 有什么办法可以查看已退出的容器的日志? 我可以使用来获取已退出容器的容器ID,但是我想知道它在运行时发生了什么。 问题答案: 使用。它也适用于停止的容器,并捕获容器主过程的整个STDOUT和STDERR流:

  • 「Allen 谈 Docker 系列」 DaoCloud 正在启动 Docker 技术系列文章,每周都会为大家推送一期真材实料的精选 Docker 文章。主讲人为 DaoCloud 核心开发团队成员 Allen(孙宏亮),他是 InfoQ 「Docker 源码分析」专栏作者,已出版《Docker 源码分析》一书。Allen 接触 Docker 近两年,爱钻研系统实现原理,及 Linux 操作系统。