]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/link: add support for telemetry
authorMichael Matloob <matloob@golang.org>
Wed, 8 May 2024 17:23:07 +0000 (13:23 -0400)
committerMichael Matloob <matloob@golang.org>
Thu, 9 May 2024 16:18:18 +0000 (16:18 +0000)
Add counters for invocations and provided flag names.

For #58894

Change-Id: Ibd4eeca905d277879b601d95bab524fbced6a98b
Reviewed-on: https://go-review.googlesource.com/c/go/+/584276
Reviewed-by: Than McIntosh <thanm@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
src/cmd/link/internal/ld/main.go

index c19dd2565bcc9956ba9c0da7d5ea33647f4b075e..8a67ccfb32afffee063eb8d0117950fc5f3d7a16 100644 (file)
@@ -36,6 +36,7 @@ import (
        "cmd/internal/objabi"
        "cmd/internal/quoted"
        "cmd/internal/sys"
+       "cmd/internal/telemetry"
        "cmd/link/internal/benchmark"
        "flag"
        "internal/buildcfg"
@@ -155,6 +156,8 @@ func (t *ternaryFlag) IsBoolFlag() bool { return true } // parse like a boolean
 func Main(arch *sys.Arch, theArch Arch) {
        log.SetPrefix("link: ")
        log.SetFlags(0)
+       telemetry.Start()
+       telemetry.Inc("link/invocations")
 
        thearch = theArch
        ctxt := linknew(arch)
@@ -200,6 +203,7 @@ func Main(arch *sys.Arch, theArch Arch) {
        objabi.Flagfn1("importcfg", "read import configuration from `file`", ctxt.readImportCfg)
 
        objabi.Flagparse(usage)
+       telemetry.CountFlags("link/flag:", *flag.CommandLine)
 
        if ctxt.Debugvlog > 0 {
                // dump symbol info on crash