Performance Grails审计日志插件-性能

Performance Grails审计日志插件-性能,performance,grails,logging,gorm,Performance,Grails,Logging,Gorm,我正在使用它记录grails应用程序上的创建/编辑/删除操作 是否有人知道实际的日志记录(将日志保存到DB)是在单独的线程中执行的,还是只有在完成日志记录后才会返回请求响应(例如,该请求附带修改了一些记录)。在他们的文档中或外部的任何地方都找不到此插件的任何内容。此插件使用此插件。消息以阻塞方式处理,因此在日志记录完成后将收到响应 它很容易复制-只需创建一个自定义的Hibernate侦听器: import org.hibernate.event.PostInsertEvent; import o

我正在使用它记录grails应用程序上的创建/编辑/删除操作

是否有人知道实际的日志记录(将日志保存到DB)是在单独的线程中执行的,还是只有在完成日志记录后才会返回请求响应(例如,该请求附带修改了一些记录)。在他们的文档中或外部的任何地方都找不到此插件的任何内容。

此插件使用此插件。消息以阻塞方式处理,因此在日志记录完成后将收到响应

它很容易复制-只需创建一个自定义的Hibernate侦听器:

import org.hibernate.event.PostInsertEvent;
import org.hibernate.event.PostInsertEventListener;
import org.hibernate.event.PostUpdateEvent;
import org.hibernate.event.PostUpdateEventListener;

class HibernateDummyListener implements PostInsertEventListener, PostUpdateEventListener {

    public void onPostInsert(final PostInsertEvent event) {
        println "Hibernate: ON POST INSERT"

        //No delay
    }

    public void onPostUpdate(final PostUpdateEvent event) {
        println "Hibernate: ON POST UPDATE"

        Thread.sleep(10000)
    }
}
…和resources.groovy:

beans = {
   hibernateDummyListener(HibernateDummyListener)

   hibernateEventListeners(HibernateEventListeners) {
      listenerMap = ['post-insert':hibernateDummyListener,
                     'post-update':hibernateDummyListener]
   }
}

非常感谢您的分析和示例。这意味着,我可能需要推出自己的产品。因为我不需要记录确切的更改,所以我应该能够推出一些不会阻塞的内容。不客气。如果我是你,我会考虑使用Log4J来达到这个目的(AsasChyAppEnter应该做到这一点)。这可能会节省你一些时间。