swaf/src/migrations/CreateLogsTable.ts

25 lines
763 B
TypeScript

import Migration from "../db/Migration";
import {query} from "../db/MysqlConnectionManager";
/**
* Must be the first migration
*/
export default class CreateLogsTable extends Migration {
async install(): Promise<void> {
await query('CREATE TABLE logs(' +
'id INT NOT NULL AUTO_INCREMENT,' +
'level TINYINT UNSIGNED NOT NULL,' +
'message TEXT NOT NULL,' +
'log_id BINARY(16),' +
'error_name VARCHAR(128),' +
'error_message VARCHAR(512),' +
'error_stack TEXT,' +
'created_at DATETIME NOT NULL DEFAULT NOW(),' +
'PRIMARY KEY (id)' +
')');
}
async rollback(): Promise<void> {
await query('DROP TABLE logs');
}
}