監査ログをプログラムで出力(ユーザやイベント指定など)する方法
これは、InterSystems FAQサイトの記事です。
監査ログをプログラミングで出力するために、監査ログの一覧を取得する%SYS.Audit クラスのListクエリを利用することができます。
サンプルコードは以下のようになります。
Set statement=##class(%SQL.Statement).%New()
Set status=statement.%PrepareClassQuery("%SYS.Audit","List")
Set rs=statement.%Execute()
Set tab = $char(9)
While rs.%Next() {
Write rs.%Get("TimeStamp")_tab_rs.%Get("Event")_tab_rs.%Get("Username"),!
}