繁体   English   中英

docker 容器中的 Kafka 连接日志

[英]Kafka-connect logs in docker container

我有一个需要作为 docker 容器运行的 kafka 连接 jar。 我需要在容器中的日志文件(最好在目录/文件 - /etc/kafka/kafka-connect-logs)上捕获我的所有连接日志,然后可以使用docker 中的卷。 当我更改connect-log4j.properties以附加到日志文件时,我看到没有创建日志文件。 如果我在没有 docker 的情况下尝试相同的操作并通过更改connect-log4j.properties在本地 linux VM 上运行 kafka connect 以将日志写入日志文件,它可以完美运行,但不能从 docker 运行。 任何建议都会非常有帮助。

Docker File

FROM confluent/platform

COPY Test.jar /usr/local/bin/
COPY kafka-connect-docker.sh /usr/local/bin/
COPY connect-distributed.properties /usr/local/bin/
COPY connect-log4j.properties /etc/kafka/connect-log4j.properties

RUN ["apt-get", "update"]
RUN ["apt-get", "install", "-yq", "curl"]
RUN ["chown", "-R", "confluent:confluent", "/usr/local/bin/kafka-connect-docker.sh", "/usr/local/bin/connect-distributed.properties",  "/usr/local/bin/Test.jar"]
RUN ["chmod", "+x", "/usr/local/bin/kafka-connect-docker.sh", "/usr/local/bin/connect-distributed.properties", "/usr/local/bin/Test.jar"]
RUN ["chown", "-R", "confluent:confluent", "/etc/kafka/connect-log4j.properties"]
RUN ["chmod", "777", "/usr/local/bin/kafka-connect-docker.sh", "/etc/kafka/connect-log4j.properties"]

EXPOSE 8083

CMD [ "/usr/local/bin/kafka-connect-docker.sh" ]

connect-log4j.properties

# Root logger option
log4j.rootLogger = INFO, FILE

# Direct log messages to stdout
log4j.appender.FILE=org.apache.log4j.FileAppender
log4j.appender.FILE.File=/etc/kafka/log.out
# Define the layout for file appender
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%m%

log4j.logger.org.apache.zookeeper=ERROR
log4j.logger.org.I0Itec.zkclient=ERROR

kafka-connect-docker.sh

#!/bin/bash
export CLASSPATH=/usr/local/bin/Test.jar
exec /usr/bin/connect-distributed /usr/local/bin/connect-distributed.properties

当我使用默认的connect-log4j.properties (将日志附加到控制台)时,它工作正常,但无法在 docker 中创建日志文件。 此外,没有 docker 的相同进程在本地 VM 中也能正常工作(创建日志文件)。

讨论结果:

立即在 dockerfile 中声明卷并配置您的日志记录配置以将日志输出直接放置到卷中。 在 docker run (或者无论你如何启动容器)安装卷,你应该没问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM