diff --git a/src/NadekoBot/Resources/CommandStrings.Designer.cs b/src/NadekoBot/Resources/CommandStrings.Designer.cs index 2be25567..6c880516 100644 --- a/src/NadekoBot/Resources/CommandStrings.Designer.cs +++ b/src/NadekoBot/Resources/CommandStrings.Designer.cs @@ -7052,6 +7052,33 @@ namespace NadekoBot.Resources { } } + /// + /// Looks up a localized string similar to shardid. + /// + public static string shardid_cmd { + get { + return ResourceManager.GetString("shardid_cmd", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Shows which shard is a certain guild on, by guildid.. + /// + public static string shardid_desc { + get { + return ResourceManager.GetString("shardid_desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to `{0}shardid 117523346618318850`. + /// + public static string shardid_usage { + get { + return ResourceManager.GetString("shardid_usage", resourceCulture); + } + } + /// /// Looks up a localized string similar to shardstats. /// diff --git a/src/NadekoBot/Resources/CommandStrings.resx b/src/NadekoBot/Resources/CommandStrings.resx index a0cd8924..0f03e989 100644 --- a/src/NadekoBot/Resources/CommandStrings.resx +++ b/src/NadekoBot/Resources/CommandStrings.resx @@ -3069,4 +3069,13 @@ `{0}connectshard 2` + + shardid + + + Shows which shard is a certain guild on, by guildid. + + + `{0}shardid 117523346618318850` + \ No newline at end of file diff --git a/src/NadekoBot/Services/CommandHandler.cs b/src/NadekoBot/Services/CommandHandler.cs index 8cc68001..ac0a5b80 100644 --- a/src/NadekoBot/Services/CommandHandler.cs +++ b/src/NadekoBot/Services/CommandHandler.cs @@ -105,9 +105,9 @@ namespace NadekoBot.Services BlacklistCommands.BlacklistedUsers.Contains(usrMsg.Author.Id); const float oneThousandth = 1.0f / 1000; - private Task LogSuccessfulExecution(SocketUserMessage usrMsg, ExecuteCommandResult exec, SocketTextChannel channel, int ticks) + private Task LogSuccessfulExecution(SocketUserMessage usrMsg, ExecuteCommandResult exec, SocketTextChannel channel, int exec1, int exec2, int exec3, int total) { - _log.Info("Command Executed after {4}s\n\t" + + _log.Info("Command Executed after {4}/{5}/{6}/{7}s\n\t" + "User: {0}\n\t" + "Server: {1}\n\t" + "Channel: {2}\n\t" + @@ -116,13 +116,17 @@ namespace NadekoBot.Services (channel == null ? "PRIVATE" : channel.Guild.Name + " [" + channel.Guild.Id + "]"), // {1} (channel == null ? "PRIVATE" : channel.Name + " [" + channel.Id + "]"), // {2} usrMsg.Content, // {3} - ticks * oneThousandth); + exec1 * oneThousandth, // {4} + exec2 * oneThousandth, // {5} + exec3 * oneThousandth, // {6} + total * oneThousandth // {7} + ); return Task.CompletedTask; } - private void LogErroredExecution(SocketUserMessage usrMsg, ExecuteCommandResult exec, SocketTextChannel channel, int ticks) + private void LogErroredExecution(SocketUserMessage usrMsg, ExecuteCommandResult exec, SocketTextChannel channel, int exec1, int exec2, int exec3, int total) { - _log.Warn("Command Errored after {5}s\n\t" + + _log.Warn("Command Errored after {5}/{6}/{7}/{8}s\n\t" + "User: {0}\n\t" + "Server: {1}\n\t" + "Channel: {2}\n\t" + @@ -133,7 +137,10 @@ namespace NadekoBot.Services (channel == null ? "PRIVATE" : channel.Name + " [" + channel.Id + "]"), // {2} usrMsg.Content,// {3} exec.Result.ErrorReason, // {4} - ticks * oneThousandth // {5} + exec1 * oneThousandth, // {5} + exec2 * oneThousandth, // {6} + exec3 * oneThousandth, // {7} + total * oneThousandth // {8} ); } @@ -219,16 +226,22 @@ namespace NadekoBot.Services if (IsBlacklisted(guild, usrMsg)) return; + var exec1 = Environment.TickCount - execTime; + var cleverBotRan = await Task.Run(() => TryRunCleverbot(usrMsg, guild)).ConfigureAwait(false); if (cleverBotRan) return; + var exec2 = Environment.TickCount - execTime; + // maybe this message is a custom reaction // todo log custom reaction executions. return struct with info var crExecuted = await Task.Run(() => CustomReactions.TryExecuteCustomReaction(usrMsg)).ConfigureAwait(false); if (crExecuted) //if it was, don't execute the command return; + var exec3 = Environment.TickCount - execTime; + string messageContent = usrMsg.Content; // execute the command and measure the time it took @@ -238,11 +251,11 @@ namespace NadekoBot.Services if (exec.Result.IsSuccess) { await CommandExecuted(usrMsg, exec.CommandInfo).ConfigureAwait(false); - await LogSuccessfulExecution(usrMsg, exec, channel, execTime).ConfigureAwait(false); + await LogSuccessfulExecution(usrMsg, exec, channel, exec1, exec2, exec3, execTime).ConfigureAwait(false); } else if (!exec.Result.IsSuccess && exec.Result.Error != CommandError.UnknownCommand) { - LogErroredExecution(usrMsg, exec, channel, execTime); + LogErroredExecution(usrMsg, exec, channel, exec1, exec2, exec3, execTime); if (guild != null && exec.CommandInfo != null && exec.Result.Error == CommandError.Exception) { if (exec.PermissionCache != null && exec.PermissionCache.Verbose)