如何解决Docker容器中运行flume及启动不输出运行日志的问题
发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,小编给大家分享一下如何解决Docker容器中运行flume及启动不输出运行日志的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解
千家信息网最后更新 2025年12月01日如何解决Docker容器中运行flume及启动不输出运行日志的问题
小编给大家分享一下如何解决Docker容器中运行flume及启动不输出运行日志的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
flume配置文件如下:
# Name the components on this agent app1.sources = r1 app1.sinks = k1 app1.channels = c1 # Describe/configure the source app1.sources.r1.type = avro app1.sources.r1.bind = 0.0.0.0 app1.sources.r1.port = 44444 # Describe the sink #a1.sinks.k1.type = logger app1.sinks.k1.type = file_roll app1.sinks.k1.sink.directory = /var/log/my/app1 app1.sinks.k1.sink.rollInterval=86400 app1.sinks.k1.sink.batchSize=100 app1.sinks.k1.sink.serializer=text app1.sinks.k1.sink.serializer.appendNewline = false # Use a channel which buffers events in memory app1.channels.c1.type = memory app1.channels.c1.capacity = 1000 app1.channels.c1.transactionCapacity = 100 app1.channels.c1.byteCapacity = 100000000 app1.channels.c1.byteCapacityBufferPercentage = 10 # Bind the source and sink to the channel app1.sources.r1.channels = c1 app1.sinks.k1.channel = c1 # Name the components on this agent app2.sources = r2 app2.sinks = k2 app2.channels = c2 # Describe/configure the source app2.sources.r2.type = avro app2.sources.r2.bind = 0.0.0.0 app2.sources.r2.port = 44445 # Describe the sink #a1.sinks.k1.type = logger app2.sinks.k2.type = file_roll app2.sinks.k2.sink.directory = /var/log/my/app2 app2.sinks.k2.sink.rollInterval=86400 app2.sinks.k2.sink.batchSize=100 app2.sinks.k2.sink.serializer=text app2.sinks.k2.sink.serializer.appendNewline = false # Use a channel which buffers events in memory app2.channels.c2.type = memory app2.channels.c2.capacity = 1000 app2.channels.c2.transactionCapacity = 100 app2.channels.c2.byteCapacity = 100000000 app2.channels.c2.byteCapacityBufferPercentage = 10 # Bind the source and sink to the channel app2.sources.r2.channels = c2 app2.sinks.k2.channel = c2
dockerfile如下:
FROM ubuntu:16.04 MAINTAINER XXX "XXX@XXXXX.com" RUN apt-get update ADD jdk-8u77-linux-x64.tar.gz /usr/local/java RUN cp /etc/profile /etc/profile.bak ENV JAVA_HOME /usr/local/java/jdk1.8.0_77 ENV PATH $JAVA_HOME/bin:$PATH ENV CLASSPATH .:$JAVA_HOME/lib ADD apache-flume-1.7.0-bin.tar.gz /usr/local/flume RUN apt-get install -y tzdata RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime RUN echo "Asia/Shanghai" > /etc/timezone RUN dpkg-reconfigure -f noninteractive tzdata ENV LANG C.UTF-8 WORKDIR /var/log RUN mkdir my WORKDIR /var/log/my RUN mkdir app1 RUN mkdir app2 EXPOSE 44444 EXPOSE 44445 ENTRYPOINT (/usr/local/flume/apache-flume-1.7.0-bin/bin/flume-ng agent --conf /usr/local/flume/apache-flume-1.7.0-bin/conf -conf-file /usr/local/flume/apache-flume-1.7.0-bin/conf/flume-conf.properties --name app1 &) && (/usr/local/flume/apache-flume-1.7.0-bin/bin/flume-ng agent --conf /usr/local/flume/apache-flume-1.7.0-bin/conf -conf-file /usr/local/flume/apache-flume-1.7.0-bin/conf/flume-conf.properties --name app2 &) && /bin/bash
下面看下flume 启动不输出运行日志
问题
以前碰到的一个问题,算是一个小问题,flume 用命令
./flume-ng agent -c /opt/apps/flume/conf -f /opt/apps/flume/conf/syslog_tcp.conf -n a1 -Dflume.root.logger=INFO,console
启动的时候,flume使用的log4j不起效,不会输出日志到日志文件。
解决
在启动时去掉
-Dflume.root.logger=INFO,console
这个命令就好了。flume的log4j就正常工作了。也算是一个坑。
加上这个命令会将运行的日志在控制台输出。
以上是"如何解决Docker容器中运行flume及启动不输出运行日志的问题"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
日志
运行
问题
输出
命令
篇文章
容器
内容
文件
不怎么
大部分
控制台
时候
更多
知识
行业
资讯
资讯频道
频道
参考
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
腾讯云 云原生数据库
育碧服务器什么梗
nosql数据库实践考试题库
网络安全征文800字免费
如何区分软件开发和软件产品
大连赴日软件开发
幼儿版网络安全漫画
cips 数据库
云存储与服务器
四川工业软件开发靠谱吗
三星级网络安全
软件开发公司的培训需求分析
人民银行软件开发中心是行员
原神b站官方服务器互通
小木虫 服务器机时 购买
瑞安电力监控软件开发
平谷区定制软件开发诚信合作
网络安全教育稿400
大话西游2删除服务器名称
郴州市学计算机软件开发培训
清科数据库企业并购2019
电子信息技术发展 网络安全
无锡信息化网络技术参考价格
江西科立网络技术
imap服务器已关闭
保卫萝卜3有几个服务器
群晖web连接不上数据库
平谷区定制软件开发诚信合作
河南软件开发工资
不属于网络安全原则