diff --git a/kord-extensions/src/main/kotlin/com/kotlindiscord/kord/extensions/commands/application/message/MessageCommand.kt b/kord-extensions/src/main/kotlin/com/kotlindiscord/kord/extensions/commands/application/message/MessageCommand.kt index 26416db47d..ee9eaf1563 100644 --- a/kord-extensions/src/main/kotlin/com/kotlindiscord/kord/extensions/commands/application/message/MessageCommand.kt +++ b/kord-extensions/src/main/kotlin/com/kotlindiscord/kord/extensions/commands/application/message/MessageCommand.kt @@ -70,14 +70,11 @@ public abstract class MessageCommand, M : ModalF mapOf( "name" to name, - "type" to "message" + "type" to "message", + "extension" to extension.name, ) ) - context.sentry.context( - "extension", extension.name - ) - context.sentry.breadcrumb(BreadcrumbType.User) { category = "command.application.message" message = "Message command \"$name\" called." diff --git a/kord-extensions/src/main/kotlin/com/kotlindiscord/kord/extensions/commands/application/slash/SlashCommand.kt b/kord-extensions/src/main/kotlin/com/kotlindiscord/kord/extensions/commands/application/slash/SlashCommand.kt index ffdec6f281..5d4c5492f7 100644 --- a/kord-extensions/src/main/kotlin/com/kotlindiscord/kord/extensions/commands/application/slash/SlashCommand.kt +++ b/kord-extensions/src/main/kotlin/com/kotlindiscord/kord/extensions/commands/application/slash/SlashCommand.kt @@ -188,19 +188,30 @@ public abstract class SlashCommand, A : Argumen /** If enabled, adds the initial Sentry breadcrumb to the given context. **/ public open suspend fun firstSentryBreadcrumb(context: C, commandObj: SlashCommand<*, *, *>) { if (sentry.enabled) { + val fullName = buildString { + parentCommand?.let { + append(it.name) + append(" ") + } + + parentGroup?.let { + append(it.name) + append(" ") + } + + append(name) + } + context.sentry.context( "command", mapOf( - "name" to name, - "type" to "slash" + "name" to fullName, + "type" to "slash", + "extension" to extension.name ) ) - context.sentry.context( - "extension", extension.name - ) - context.sentry.breadcrumb(BreadcrumbType.User) { category = "command.application.slash" message = "Slash command \"${commandObj.name}\" called." diff --git a/kord-extensions/src/main/kotlin/com/kotlindiscord/kord/extensions/commands/application/user/UserCommand.kt b/kord-extensions/src/main/kotlin/com/kotlindiscord/kord/extensions/commands/application/user/UserCommand.kt index 54df9d120d..0d0219fae3 100644 --- a/kord-extensions/src/main/kotlin/com/kotlindiscord/kord/extensions/commands/application/user/UserCommand.kt +++ b/kord-extensions/src/main/kotlin/com/kotlindiscord/kord/extensions/commands/application/user/UserCommand.kt @@ -70,14 +70,11 @@ public abstract class UserCommand, M : ModalForm>( mapOf( "name" to name, - "type" to "user" + "type" to "user", + "extension" to extension.name, ) ) - context.sentry.context( - "extension", extension.name - ) - context.sentry.breadcrumb(BreadcrumbType.User) { category = "command.application.user" message = "User command \"$name\" called." diff --git a/kord-extensions/src/main/kotlin/com/kotlindiscord/kord/extensions/commands/chat/ChatCommand.kt b/kord-extensions/src/main/kotlin/com/kotlindiscord/kord/extensions/commands/chat/ChatCommand.kt index 52fe892708..66f163b9ed 100644 --- a/kord-extensions/src/main/kotlin/com/kotlindiscord/kord/extensions/commands/chat/ChatCommand.kt +++ b/kord-extensions/src/main/kotlin/com/kotlindiscord/kord/extensions/commands/chat/ChatCommand.kt @@ -385,14 +385,11 @@ public open class ChatCommand( mapOf( "name" to translatedName, - "type" to "chat" + "type" to "chat", + "extension" to extension.name, ) ) - context.sentry.context( - "extension", extension.name - ) - context.sentry.breadcrumb(BreadcrumbType.User) { category = "command.chat" message = "Command \"$name\" called."