Logging 使用Play Framework记录对H2数据库的查询

Logging 使用Play Framework记录对H2数据库的查询,logging,playframework,h2,playframework-1.x,h2db,Logging,Playframework,H2,Playframework 1.x,H2db,我正在使用H2数据库,在内存中,在Play框架(1.2.7)中 为了记录所有查询,我添加了;TRACE_LEVEL_FILE=3在Play的application.conf中这些参数的末尾: db.url %prod.db.url %debug.db.url 但是nithing发生了,在机器(Mac)上似乎没有创建或更新任何文件,即使DB肯定有活动(当我浏览H2的web界面时,我可以看到许多记录已经被写入) 我错过了什么?如何才能写入日志?我不知道跟踪级别\u文件,但您可以尝试使用 将以下内容添

我正在使用H2数据库,在内存中,在Play框架(1.2.7)中

为了记录所有查询,我添加了
;TRACE_LEVEL_FILE=3
在Play的
application.conf中这些参数的末尾:

  • db.url
  • %prod.db.url
  • %debug.db.url
  • 但是nithing发生了,在机器(Mac)上似乎没有创建或更新任何文件,即使DB肯定有活动(当我浏览H2的web界面时,我可以看到许多记录已经被写入)


    我错过了什么?如何才能写入日志?

    我不知道
    跟踪级别\u文件
    ,但您可以尝试使用

    将以下内容添加到您的
    依赖项中。yml

    - p6spy -> p6spy 2.1.2:
        exclude:
          - p6spy -> p6spy-signedjar-test
    
    运行
    播放deps

    现在编辑“application.conf”,如下所示:

    # Comment out the default test URL
    #%test.db.url=jdbc:h2:mem:play;MODE=MYSQL;LOCK_MODE=0
    # Use the p6spy driver
    %test.db.driver=com.p6spy.engine.spy.P6SpyDriver
    %test.db.url=jdbc:p6spy:h2:mem:play;MODE=MYSQL;LOCK_MODE=0
    # Tell the p6spy driver to use the H2 JPA dialect
    %test.jpa.dialect=org.hibernate.dialect.H2Dialect
    
    最后,创建
    conf/spy.properties
    ,并将以下内容放入其中:

    appender=com.p6spy.engine.spy.appender.StdoutLogger
    realdatasourceclass=org.h2.Driver
    
    就这样,你可以走了。使用
    playtest
    启动应用程序,您将看到所有数据库查询都记录到stdout

    可以在
    spy.properties
    中配置很多