Manual:Logging table

Every log action in MediaWiki is logged in the logging table. Users can see those edits on Special:Log, with the exception of a few restricted logs (like Special:Log/suppress).

+---+-+--+-+++ +---+-+--+-+++ +---+-+--+-+++
 * Field        | Type                | Null | Key | Default        | Extra          |
 * log_type     | varbinary(32)       | NO   | MUL | NULL           |                |
 * log_action   | varbinary(32)       | NO   |     | NULL           |                |
 * log_timestamp | varchar(14)        | NO   | MUL | 19700101000000 |                |
 * log_user     | int(10) unsigned    | NO   | MUL | 0              |                |
 * log_namespace | int(11)            | NO   | MUL | NULL           |                |
 * log_title    | varchar(255)        | NO   |     |                |                |
 * log_comment  | varchar(255)        | NO   |     |                |                |
 * log_params   | blob                | NO   |     | NULL           |                |
 * log_deleted  | tinyint(3) unsigned | NO   |     | 0              |                |
 * log_id       | int(10) unsigned    | NO   | PRI | NULL           | auto_increment |
 * log_user_text | varchar(255)       | NO   |     |                |                |
 * log_page     | int(10) unsigned    | YES  | MUL | NULL           |                |

Fields
The contents of this table is what you see on the Special:Log page.

Example:


 * 14:18, 25 June 2008 Jacksprat (Talk | contribs| block) uploaded "Image:Climb.jpg" (Added this image for the climbing page)

mysql> SELECT DISTINCT log_action FROM logging; ++ ++ ++ 26 rows in set
 * log_type: The type of the log action, or the "log type". You can filter by this type on Special:Log. Typical values are: block, delete, import, makebot, move, newusers, protect, renameuser, rights, upload ("uploaded" in example)
 * log_action: The action performed. There may be multiple actions possible for a given type: for example, an entry with the type delete may have the action delete or restore, etc. Values are (as of 19 June 2009):
 * log_action |
 * upload    |
 * delete    |
 * protect   |
 * unprotect |
 * restore   |
 * rights    |
 * block     |
 * move      |
 * move_redir |
 * newusers  |
 * unblock   |
 * create    |
 * create2   |
 * renameuser |
 * grant     |
 * revoke    |
 * modify    |
 * overwrite |
 * patrol    |
 * autocreate |
 * move_prot |
 * reblock   |
 * event     |
 * revision  |
 * whitelist |
 * dwhitelist |
 * log_timestamp: the time the action was performed, in the timestamp format MediaWiki uses everywhere in the database: yyyymmddhhmmss ("14:18, 25 June 2008" in example)
 * log_user: the id of the user who performed the action. This is a reference into the user table (the user id of "Jacksprat" in example)
 * log_namespace: the namespace of the affected page. Together with log_title, this is a reference into the page table ("Image:Climb.jpg" in example)
 * Note: logging table may contain rows with log_namespace < 0:
 * Special:Renameuser with log_type and log_action being either "" or "renameuser"
 * Special:Userlogin with log_type and log_action being "newusers"


 * log_title: the title of the affected page. Together with log_namespace, this is a reference into the page table
 * log_comment: the comment given for the action; that is the upload comment for uploads, the deletion comment for deletions, etc
 * log_params: additional parameters, usually empty. For user blocks, this contains the duration of the block, in human readable form. For page moves, this contains the location the page was moved to.


 * log_id: primary key for the table.
 * log_deleted: Used with the revision delete system to delete log entries. It is a bit field. Take the sum of the following the determine what it represents:
 * 1 Action deleted
 * 2 Comment deleted
 * 4 User deleted
 * 8 If the deleted information is restricted. If this field is not set, then only deletedhistory right is needed, otherwise you need suppressrevision right. (On Wikimedia wikis, this corresponds to if admins can view the entry, or if only oversighters can)
 * For example, if the value is 6 (4+2), then the action would be visible, but the comment and user would not be unless you had deletedhistory rights.


 * log_user_text: username of the user who performed the action, intended primarily for anonymous users, fillable by maintenance/populateLogUsertext.php
 * log_page: The page_id that this log action is about.

Previous versions
+---+--+--+-+++ +---+--+--+-+++ +---+--+--+-+++
 * Field        | Type             | Null | Key | Default        | Extra          |
 * log_type     | varbinary(10)    | NO   | MUL |                |                |
 * log_action   | varbinary(10)    | NO   |     |                |                |
 * log_timestamp | binary(14)      | NO   | MUL | 19700101000000 |                |
 * log_user     | int unsigned     | NO   | MUL | 0              |                |
 * log_namespace | int(11)         | NO   | MUL | 0              |                |
 * log_title    | varchar(255)     | NO   |     |                |                |
 * log_comment  | varchar(255)     | NO   |     |                |                |
 * log_params   | blob             | NO   |     |                |                |
 * log_deleted  | tinyint unsigned | NO   |     | 0              |                |
 * log_id       | int unsigned     | NO   | PRI |                | auto_increment |

+---+--+--+-+++ +---+--+--+-+++ +---+--+--+-+++
 * Field        | Type             | Null | Key | Default        | Extra          |
 * log_type     | char(10)         | NO   | MUL |                |                |
 * log_action   | char(10)         | NO   |     |                |                |
 * log_timestamp | char(14)        | NO   | MUL | 19700101000000 |                |
 * log_user     | int unsigned     | NO   | MUL | 0              |                |
 * log_namespace | int(11)         | NO   | MUL | 0              |                |
 * log_title    | varchar(255)     | NO   |     |                |                |
 * log_comment  | varchar(255)     | NO   |     |                |                |
 * log_params   | blob             | NO   |     |                |                |

+---+--+--+-+++ +---+--+--+-+++ +---+--+--+-+++
 * Field        | Type             | Null | Key | Default        | Extra          |
 * log_type     | char(10)         | NO   | MUL |                |                |
 * log_action   | char(10)         | NO   |     |                |                |
 * log_timestamp | char(14)        | NO   |     | 19700101000000 |                |
 * log_user     | int unsigned     | NO   | MUL | 0              |                |
 * log_namespace | int(11)         | NO   | MUL | 0              |                |
 * log_title    | varchar(255)     | NO   |     |                |                |
 * log_comment  | varchar(255)     | NO   |     |                |                |
 * log_params   | blob             | NO   |     |                |                |