mirror of
https://github.com/status-im/consul.git
synced 2025-01-09 13:26:07 +00:00
040647e0ba
Co-authored-by: hc-github-team-consul-core <github-team-consul-core@hashicorp.com>
5 lines
632 B
JavaScript
5 lines
632 B
JavaScript
(function(r){const e=["init","serviceRecentSummarySeries","serviceRecentSummaryStats","upstreamRecentSummaryStats","downstreamRecentSummaryStats"]
|
|
r.consul=new class{constructor(){this.registry={},this.providers={}}registerMetricsProvider(r,t){for(var i of e)if("function"!=typeof t[i])throw new Error(`Can't register metrics provider '${r}': missing ${i} method.`)
|
|
this.registry[r]=t}getMetricsProvider(r,e){if(!(r in this.registry))throw new Error(`Metrics Provider '${r}' is not registered.`)
|
|
return r in this.providers||(this.providers[r]=Object.create(this.registry[r]),this.providers[r].init(e)),this.providers[r]}}})(window)
|