感覺自己快每週一問了,哈哈,還好每個問題大部分都有解決
架構是這樣的
172.16.16.1 SmartFoxServer + log4j2 + Kafka
172.16.16.2 ELK
目前環境皆已安裝完成,手發Log測試
確實能從 .1(Kafka)將log資料送到.2(ELK)
問:照官方配置 log4j2.xml 一直無法將log資料發送到自己的 .1(kafka),想詢問是否有測試的方式,可以進行測試,不曉得版上大大,有沒有遇過這個問題
<Appenders>
<Kafka name="Kafka" topic="hello">
<PatternLayout pattern="%date %message"/>
<Property name="bootstrap.servers">127.0.0.1:9092</Property>
</Kafka>
</Appenders>
<Loggers>
<Root level="DEBUG">
<AppenderRef ref="Kafka"/>
</Root>
<Logger name="org.apache.kafka" level="INFO" /> <!-- avoid recursive logging -->
</Loggers>
查看kafka取的資料訊息指令
bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --topic hello --from-beginning
參考資料
https://blog.csdn.net/xianjie0318/article/details/77882144
不曉得,就單台機器有這問題,別台都沒問題,所以不管它了,哈
感覺 ELK 收的到 log 而 卡夫卡 卻收不到 log
徵結點會不會是兩邊設定的 debug level 不一致啊?
日誌level:fatal > error > warn > info > debug > trace
先把兩邊的 level 都調成一樣試試看吧!
ps. 我還沒玩過log4j2,只是提供以前log4j的配置經驗,詳細的解法可能等我用過後才能回覆!
感謝您願意一同討論,
我這邊是透過logstash 手發資料給 Kafka,也確實Kafka有收到資料
然後才透過logstash去 自動抓取kafka的資料後,自己轉發給 ELK
最主要是要把手發的動作,換成 用log4j2去自動發送這樣而已
只是log4j2這邊,
1來是SmartFoxServer確實有log產生,但沒有發送資料給kafka
2來是想問問有沒有一個,測試的方式去測試,因為我確實連除錯log都不清楚去哪裡查看
我剛剛把level 調整成 ALL或TRACE 了,都試過了,無效T.T
看來徵結點應該在「聰明狐貍伺服器
」!沒用過!
不過搜尋一下官網有找到類似的提問如下:
聰明狐貍伺服器討論串
看外國人的回覆應該是該伺服器本來是內建log4j造成的!
類似像jenkins、ELK、spark⋯ 這類 java開發的應用,也許都還沒更新到log4j2的版本!
可試著先改回log4j!
ps. 如果對java開發不熟,不建議像外國提問人一樣自行替換jar檔,替換後你如果沒有實際除錯的經驗,搞不好連「聰明狐貍
」都無法啟動
感謝你,協助我解決,目前我也還在找解決方案
未來如果有解決,在同步相關進度上來