簡體   English   中英

AWS Lambda無法識別log4j2.xml配置文件

[英]AWS Lambda does not recognize log4j2.xml config file

我正在嘗試使用log4j2 Loggers登錄我的aws lambda函數,但遺憾的是無法找到log4j2.xml,我只是在CloudTrail日志中看到標准錯誤消息

“ERROR StatusLogger未找到log4j2配置文件。使用默認配置:僅將錯誤記錄到控制台。”

如果我在本地運行應用程序(在main方法中調用object方法)一切正常)。 我遵循AWS官方文檔,但沒有幫助。

可部署的虛擬項目位於: https//github.com/dimarzio/testlambdalog

唯一不同的是 - 我正在使用shadowJar插件...有趣的是 - 當我查看* all.jar時,log4j2.xml直接放在* .jar的根目錄中

我找到了問題的根源,它實際上是shadowJar插件! 將在可執行jar存檔內生成的文件和文件夾結構不能被lambda執行環境完全識別。

要使其工作(如果您使用的是gradle),請閱讀以下文檔站點: https ://docs.aws.amazon.com/lambda/latest/dg/create-deployment-pkg-zip-java.html

關鍵是buildZip gradle任務。

因此,必須謹慎對待使用shadowJar插件進行AWS Lambda配置。 一般來說工作正常,但可以面對我已相應更新Github倉庫的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM