feat(commands): added better logging for errors
This commit is contained in:
parent
d6b2470a8b
commit
42b13272e9
1 changed files with 21 additions and 15 deletions
36
src/index.ts
36
src/index.ts
|
@ -14,24 +14,22 @@
|
|||
* You should have received a copy of the GNU General Public License
|
||||
* along with ArgonBot. If not, see <https: //www.gnu.org/licenses/>.
|
||||
*/
|
||||
import path from 'path';
|
||||
|
||||
require('module-alias/register');
|
||||
|
||||
import process from 'process';
|
||||
import figlet from 'figlet';
|
||||
import gradient from 'gradient-string';
|
||||
import config from 'config';
|
||||
import chalk from 'chalk';
|
||||
import { Validator } from 'jsonschema';
|
||||
import { DateTime } from 'luxon';
|
||||
import { Client, Collection } from 'discord.js';
|
||||
import type Command from '@structures/command';
|
||||
import { Defaults } from '@utils/defaults';
|
||||
import { debug, error, fatal, info, verbose } from '@utils/logger';
|
||||
import { ECommandRunIn, ELoggingScope } from '@utils/types';
|
||||
import { Defaults } from '@utils/defaults';
|
||||
import { walkDir } from '@utils/utils';
|
||||
import chalk from 'chalk';
|
||||
import config from 'config';
|
||||
import { Client, Collection } from 'discord.js';
|
||||
import figlet from 'figlet';
|
||||
import gradient from 'gradient-string';
|
||||
import { Validator } from 'jsonschema';
|
||||
import { DateTime } from 'luxon';
|
||||
import path from 'path';
|
||||
import process from 'process';
|
||||
|
||||
import type Command from '@structures/command';
|
||||
require('module-alias/register');
|
||||
|
||||
let isBotReady = false;
|
||||
const commands: Collection<string, Command> = new Collection();
|
||||
|
@ -98,7 +96,15 @@ client.on('message', async (msg) => {
|
|||
return;
|
||||
}
|
||||
|
||||
await findCommand.run(msg, ...args);
|
||||
try {
|
||||
info(`Command ${findCommand.options.name} is being ran in ${msg.guild ? msg.guild.name : 'DMs'}`, ELoggingScope.Command);
|
||||
await findCommand.run(msg, ...args);
|
||||
info(`Finished running ${findCommand.options.name} in ${msg.guild ? msg.guild.name : `${msg.author.username} DMs`}`, ELoggingScope.Command);
|
||||
} catch(e) {
|
||||
error(`An error has occurred while running ${findCommand.options.name}!\n${e.message}`, ELoggingScope.Command);
|
||||
msg.reply('I\'m sorry but an error has occurred while running this command! Please file an issue to' +
|
||||
` https://code.relms.dev/Relms/ArgonBot!\n\`\`\`${e.message}\`\`\``);
|
||||
}
|
||||
});
|
||||
|
||||
client.on('ready', async () => {
|
||||
|
|
Reference in a new issue