Spec-Zone .ru
спецификации, руководства, описания, API

6.3.11.3. Контрольный Файл журнала

Контрольное содержание файла журнала не шифруется. См. Раздел 6.3.11.2, "Контрольные Соображения Безопасности Плагина Журнала".

Контрольный файл журнала пишется как XML, используя UTF-8 (до 4 байтов за символ). Корневой элемент <AUDIT>. Закрытие </AUDIT> тег корневого элемента пишется, когда контрольный плагин журнала завершается, таким образом, тег не присутствует в файле, в то время как плагин является активным.

Корневой элемент содержит <AUDIT_RECORD> элементы, каждый из которых содержит другие элементы, которые предоставляют информацию о контролируемом событии.

Вот демонстрационный файл журнала, переформатированный немного для удобочитаемости:

<?xml version="1.0" encoding="UTF-8"?><AUDIT> <AUDIT_RECORD>  <TIMESTAMP>2013-04-17T15:03:24 UTC</TIMESTAMP>  <RECORD_ID>1_2013-04-17T15:03:24</RECORD_ID>  <NAME>Audit</NAME>  <SERVER_ID>1</SERVER_ID>  <VERSION>1</VERSION>  <STARTUP_OPTIONS>/usr/local/mysql/bin/mysqld    --socket=/usr/local/mysql/mysql.sock    --port=3306</STARTUP_OPTIONS>  <OS_VERSION>x86_64-osx10.6</OS_VERSION>  <MYSQL_VERSION>5.7.2-m12-log</MYSQL_VERSION> </AUDIT_RECORD> <AUDIT_RECORD>  <TIMESTAMP>2013-04-17T15:03:40 UTC</TIMESTAMP>  <RECORD_ID>2_2013-04-17T15:03:24</RECORD_ID>  <NAME>Connect</NAME>  <CONNECTION_ID>2</CONNECTION_ID>  <STATUS>0</STATUS>  <STATUS_CODE>0</STATUS_CODE>  <USER>root</USER>  <OS_LOGIN></OS_LOGIN>  <HOST>localhost</HOST>  <IP>127.0.0.1</IP>  <COMMAND_CLASS>connect</COMMAND_CLASS>  <PRIV_USER>root</PRIV_USER>  <PROXY_USER></PROXY_USER>  <DB>test</DB> </AUDIT_RECORD>... <AUDIT_RECORD>  <TIMESTAMP>2013-04-17T15:03:41 UTC</TIMESTAMP>  <RECORD_ID>4_2013-04-17T15:03:24</RECORD_ID>  <NAME>Query</NAME>  <CONNECTION_ID>2</CONNECTION_ID>  <STATUS>0</STATUS>  <STATUS_CODE>0</STATUS_CODE>  <USER>root[root] @ localhost [127.0.0.1]</USER>  <OS_LOGIN></OS_LOGIN>  <HOST>localhost</HOST>  <IP>127.0.0.1</IP>  <COMMAND_CLASS>drop_table</COMMAND_CLASS>  <SQLTEXT>DROP TABLE IF EXISTS t</SQLTEXT> </AUDIT_RECORD> <AUDIT_RECORD>  <TIMESTAMP>2013-04-17T15:03:41 UTC</TIMESTAMP>  <RECORD_ID>5_2013-04-17T15:03:24</RECORD_ID>  <NAME>Query</NAME>  <CONNECTION_ID>2</CONNECTION_ID>  <STATUS>0</STATUS>  <STATUS_CODE>0</STATUS_CODE>  <USER>root[root] @ localhost [127.0.0.1]</USER>  <OS_LOGIN></OS_LOGIN>  <HOST>localhost</HOST>  <IP>127.0.0.1</IP>  <COMMAND_CLASS>create_table</COMMAND_CLASS>  <SQLTEXT>CREATE TABLE t (i INT)</SQLTEXT> </AUDIT_RECORD>... <AUDIT_RECORD>  <TIMESTAMP>2013-04-17T15:03:41 UTC</TIMESTAMP>  <RECORD_ID>7_2013-04-17T15:03:24</RECORD_ID>  <NAME>Quit</NAME>  <CONNECTION_ID>2</CONNECTION_ID>  <STATUS>0</STATUS>  <STATUS_CODE>0</STATUS_CODE>  <USER></USER>  <OS_LOGIN></OS_LOGIN>  <HOST></HOST>  <IP></IP>  <COMMAND_CLASS>connect</COMMAND_CLASS> </AUDIT_RECORD>... <AUDIT_RECORD>  <TIMESTAMP>2013-04-17T15:03:47 UTC</TIMESTAMP>  <RECORD_ID>9_2013-04-17T15:03:24</RECORD_ID>  <NAME>Shutdown</NAME>  <CONNECTION_ID>3</CONNECTION_ID>  <STATUS>0</STATUS>  <STATUS_CODE>0</STATUS_CODE>  <USER>root[root] @ localhost [127.0.0.1]</USER>  <OS_LOGIN></OS_LOGIN>  <HOST>localhost</HOST>  <IP>127.0.0.1</IP>  <COMMAND_CLASS></COMMAND_CLASS> </AUDIT_RECORD> <AUDIT_RECORD>  <TIMESTAMP>2013-04-17T15:03:47 UTC</TIMESTAMP>  <RECORD_ID>10_2013-04-17T15:03:24</RECORD_ID>  <NAME>Quit</NAME>  <CONNECTION_ID>3</CONNECTION_ID>  <STATUS>0</STATUS>  <STATUS_CODE>0</STATUS_CODE>  <USER></USER>  <OS_LOGIN></OS_LOGIN>  <HOST></HOST>  <IP></IP>  <COMMAND_CLASS>connect</COMMAND_CLASS> </AUDIT_RECORD> <AUDIT_RECORD>  <TIMESTAMP>2013-04-17T15:03:49 UTC</TIMESTAMP>  <RECORD_ID>11_2013-04-17T15:03:24</RECORD_ID>  <NAME>NoAudit</NAME>  <SERVER_ID>1</SERVER_ID> </AUDIT_RECORD></AUDIT>

Элементы в пределах <AUDIT_RECORD> у элементов есть эти характеристики:

Каждый <AUDIT_RECORD> элемент содержит ряд обязательных элементов. Другие дополнительные элементы могут появиться, в зависимости от контрольного типа записи.

Следующие элементы обязательны в каждом <AUDIT_RECORD> элемент:

Следующие элементы являются дополнительными в <AUDIT_RECORD> элементы. Многие из них происходят только с определенным <NAME> значения.