"error in prometheus reporter" warnings in Temporal Server 1.23.0 (CLI version 0.12.0)
When starting a local Temporal development server using Temporal CLI version 0.12.0, I observe "error in prometheus reporter" warnings in the terminal window. Although I experience this while using the CLI, I believe the underlying problem is in the server code, so I am reporting it here. There have been similar issues in the past, though none still open nor recent enough that I believe this to be a duplicate of those.
Expected Behavior
When starting the development server via the CLI, I expect to see a couple of relevant startup messages. Since the server is self-contained and requires no setup or configuration from the user, I do not expect to see warnings or errors unless I've started the program incorrectly (e.g., specifying malformed arguments or attempting to bind to a port already in use).
Actual Behavior
Soon after starting the development server via the CLI, I consistently see two or more warnings with the message "error in prometheus reporter" in the terminal window where that server is running. Here is a complete copy of the terminal session in which I started the development server about 45 minutes ago (there are two such warnings, both of which appeared in the first 10 minutes):
$ temporal server start-dev
Temporal server is running at: localhost:7233
Web UI is running at: http://localhost:8233
Metrics available at: http://localhost:52072/metrics
time=2024-05-09T16:41:20.407 level=WARN msg="error in prometheus reporter" error="a previously registered descriptor with the same fully-qualified name as Desc{fqName: \"AccessHistoryOld\", help: \"AccessHistoryOld counter\", constLabels: {}, variableLabels: [{namespace <nil>} {service_name <nil>} {operation <nil>}]} has different label names or a different help string"
time=2024-05-09T16:41:20.419 level=WARN msg="error in prometheus reporter" error="a previously registered descriptor with the same fully-qualified name as Desc{fqName: \"AccessHistoryOld\", help: \"AccessHistoryOld counter\", constLabels: {}, variableLabels: [{service_name <nil>} {operation <nil>} {namespace <nil>}]} has different label names or a different help string"
Steps to Reproduce the Problem
- Install Temporal CLI version 0.12.0 (which is based on Temporal Server release 1.23.0). I did this via homebrew, although I doubt that the installation method is relevant
- Run
temporal server start-devto start the development server - Run a few Workflows. It does not matter which. I have experienced this while running a reference application, exercise code from a training course, and examples from the
samples-gorepository.
Specifications
- Version: Temporal CLI version 0.12.0
- Platform: M2 MacBook Pro, running MacOS 13.6.6