5

Grails アプリケーションで監査証跡を使用する必要があります。すべての方法を試しましたが、監査ログが空です。修正する方法はありますか。挿入、削除、更新などの操作を実際に記録する必要があります。

以下は私が従ったものです: -

package audit 

class Person { 
    static auditable = true 
    String firstName 

    static constraints = { 
        firstName(nullable:true,size:0..60) 
    } 

    def onSave = { 
        println "new person inserted" 
    } 

    def onUpdate = { 
        println "person was updated" 
    } 

    def onDelete = { 
        println "person was deleted" 
    } 

    def onChange = { oldMap,newMap -> 
        println "Person was changed ..." 
        oldMap.each{ key, oldVal -> 
            if(oldVal != newMap[key]) { 
                println " * $key changed from $oldVal to " + newMap[key]
            }
        }
    }
}
4

1 に答える 1

0

私がチェックした他のリストサーブは、現在の監査ログ プラグインにバグがあることを示唆しているため、プラグインでバグが発生している可能性があります。また、フォークされ、積極的に書き直されていると思います ( http://jira.grails.org/browse/GPAUDITLOGGING )。

そうは言っても、私はあなたが提供したドメインで単純なアプリケーションをスキャフォールディングし、プラグインはprintlnステートメントを書き出しましたが、データベースの更新をAUDIT_LOGテーブルに正しく記録しただけでした. 私が試みた 2 つの挿入は、とnullの両方で記録されました。NEW_VALUEPROPERTY_NAME

Grails dbconsole ウィンドウ

于 2013-06-27T15:23:09.853 に答える