Add performance logging

This commit is contained in:
Dragory 2019-02-08 21:04:04 +02:00
parent e841f20ab0
commit e5032d8cd4
4 changed files with 24 additions and 5 deletions

View file

@ -144,6 +144,12 @@ connect().then(async conn => {
if (level === "debug") return;
const ts = moment().format("YYYY-MM-DD HH:mm:ss");
console.log(`[${ts}] [${level.toUpperCase()}] ${msg}`);
},
performanceDebug: {
enabled: true,
size: 30,
threshold: 200
}
}
});

View file

@ -9,7 +9,7 @@ let activeReload: [string, string] = null;
* A global plugin that allows bot owners to control the bot
*/
export class BotControlPlugin extends GlobalPlugin {
public static pluginName = 'bot_control';
public static pluginName = "bot_control";
getDefaultOptions() {
return {
@ -68,4 +68,17 @@ export class BotControlPlugin extends GlobalPlugin {
this.knub.reloadAllGlobalPlugins();
}
@d.command("perf")
async perfCmd(msg: Message) {
if (!this.isOwner(msg.author.id)) return;
const perfItems = this.knub.getPerformanceDebugItems();
if (perfItems.length) {
const content = "```" + perfItems.join("\n") + "```";
msg.channel.createMessage(content);
} else {
msg.channel.createMessage(errorMessage("No performance data"));
}
}
}