AWS Lambda的JVM GC日志记录?

时间:2016-07-19 07:54:35

标签: java garbage-collection aws-lambda

有人可以建议从AWS Lambda执行中记录GC事件的适用策略吗?

我正在寻找尽可能接近-XX:+PrintGC种日志的东西,但由于我无法将任何启动参数发送到lambda JVM进程,所以似乎唯一的方法是通过live JMX内省?如果这是唯一的方法,那么适用于AWS Lambda的任何库或标准化方法(依赖于运行过程的工具,例如VisualVM都是不可能的)?

3 个答案:

答案 0 :(得分:1)

我不熟悉AWS Lambda,但是如果您正在寻找JMX内省 你可以通过下面的链接找到代码示例。

https://github.com/aragozin/jvm-tools/blob/master/sjk-core/src/main/java/org/gridkit/jvmtool/MBeanGCMonitor.java

不幸的是,JMX信息并不像GC日志那样丰富,但是可以获得一些信息,例如每代内存动态。

答案 1 :(得分:1)

它不适用于所有可用参数,但您可以在AWS lambda中设置 JAVA_TOOL_OPTIONS 环境变量以传递此类标志。例如,我经常传递“-verbose:class”来调试不良的冷启动性能。

答案 2 :(得分:-2)

在jdk bin目录中使用jvisualvm。这是一个很好的工具