6.8.1 監査ログ出力用のAPIの実装例
監査ログ出力用のAPIの実装例を次に示します。
if (UserAuditLogger.isEnabled())
{
try
{
UserAuditLogger logger = UserAuditLogger.getLogger("UserComponent");
if (logger.isLoggable("Message1"))
{
AuditLogRecord record = new AuditLogRecord();
record.setMessageId("Message1");
record.setCategory(AuditLogRecord.CATEGORY_CONFIGURATION_ACCESS);
record.setResult(AuditLogRecord.RESULT_SUCCESS);
record.setObjectInfo("Object");
record.setOperation(AuditLogRecord.OPERATION_REFER);
record.setMessage("Message");
logger.log(record);
}
}
catch (AuditLogException e)
{
// 監査ログの出力に失敗したときの処理
}
}このように実装した場合の監査ログの出力例を次に示します。なお,この例はWindowsの場合です。
CALFHM 1.0, seqnum=2, msgid=Message1, date=2007-05-31T19:12:53.788+09:00, progid=Cosminexus, compid=UAP_UserComponent, pid=3984, ocp:host=hostname, ctgry=ConfigurationAccess, result=Success, subj:euid=username, obj="Object", op="Refer", loc="10.209.15.130/1234/0x0000000000000001", msg="Message"