table('audit_log'); $table ->addColumn('actor_kind', 'string', ['limit' => 16, 'null' => false]) ->addColumn('actor_id', 'string', ['limit' => 64, 'null' => true]) ->addColumn('action', 'string', ['limit' => 64, 'null' => false]) ->addColumn('target_type', 'string', ['limit' => 64, 'null' => true]) ->addColumn('target_id', 'string', ['limit' => 64, 'null' => true]) ->addColumn('details_json', 'text', ['null' => true]) ->addColumn('ip_address', 'string', ['limit' => 45, 'null' => true]); $this->addTimestampColumn($table, 'created_at'); $table ->addIndex(['created_at']) ->addIndex(['actor_kind', 'actor_id']) ->addIndex(['target_type', 'target_id']) ->create(); } }