Collect installation information (#390)

This commit is contained in:
Fedor Korotkov
2023-02-02 06:12:28 -05:00
committed by GitHub
parent 41af674a88
commit ecc5de18be
3 changed files with 31 additions and 0 deletions
@@ -0,0 +1,25 @@
import ArgumentParser
import Foundation
import Sentry
struct ReportInstallation: AsyncParsableCommand {
static var configuration = CommandConfiguration(
commandName: "report-installation",
abstract: "Send installation event to Sentry if configured",
discussion: """
Reports macOS version and device model for analytics purposes.
Helps Cirrus Labs team to prioritize testing on most popular devices.
""",
shouldDisplay: false
)
func run() async throws {
let installationEvent = Event()
installationEvent.message = SentryMessage(formatted: "installed")
installationEvent.level = SentryLevel.info
installationEvent.user = nil
installationEvent.stacktrace = nil
let id = SentrySDK.capture(event: installationEvent)
print("Captured installation event #\(id)!")
}
}
+1
View File
@@ -33,6 +33,7 @@ struct Root: AsyncParsableCommand {
Rename.self,
Stop.self,
Delete.self,
ReportInstallation.self,
])
public static func main() async throws {