限制java ssl调试日志记录

时间:2014-05-14 15:55:41

标签: java logging ssl jvm

使用JVM标志

-Djavax.net.debug=ssl

正在产生巨大的日志记录,即服务器上每个SSL事件的详细信息。反正只有它有日志错误吗?或者可能有一些更好的这些标志子集产生更整洁的输出

all            turn on all debugging
ssl            turn on ssl debugging

The following can be used with ssl:

    record       enable per-record tracing
    handshake    print each handshake message
    keygen       print key generation data
    session      print session activity
    defaultctx   print default SSL initialization
    sslctx       print SSLContext tracing
    sessioncache print session cache tracing
    keymanager   print key manager tracing
    trustmanager print trust manager tracing
    pluggability print pluggability tracing

    handshake debugging can be widened with:
    data         hex dump of each handshake message
    verbose      verbose handshake message printing

    record debugging can be widened with:
    plaintext    hex dump of record plaintext
    packet       print raw SSL/TLS packets

2 个答案:

答案 0 :(得分:64)

使用其他ssl标志的格式为ssl:[flag],例如:

-Djavax.net.debug=ssl:record-Djavax.net.debug=ssl:handshake

答案 1 :(得分:13)

我还发现使用-Djavax.net.debug=ssl(甚至其过滤器)对于调试HTTPS问题来说过于繁琐。

有一点涉及,但我更喜欢做的是在某个廉价的服务器上设置mitmproxy,然后配置我的Java客户端通过它进行代理。通过这种方式,我可以轻松地检查和重放代理上的HTTPS请求/响应流,而无需梳理一堆日志。

如果您感兴趣,我已经写了一篇关于如何实现这一目标的指南:Debugging SSL in Java using mitmproxy