Plugins: Add metric for tracking plugin asset info (#112322)
* add metric for tracking plugin asset info * make check more specific * check host instead
This commit is contained in:
@@ -81,6 +81,7 @@ func ProvideInitializationStage(cfg *config.PluginManagementCfg, pr registry.Ser
|
||||
ReportBuildMetrics,
|
||||
ReportTargetMetrics,
|
||||
ReportFSMetrics,
|
||||
ReportAssetMetrics,
|
||||
ReportCloudProvisioningMetrics(provisionedPluginsManager),
|
||||
initialization.PluginRegistrationStep(pr),
|
||||
},
|
||||
|
||||
@@ -4,6 +4,7 @@ import (
|
||||
"context"
|
||||
"errors"
|
||||
"fmt"
|
||||
"net/url"
|
||||
"slices"
|
||||
|
||||
"go.opentelemetry.io/otel/attribute"
|
||||
@@ -152,6 +153,23 @@ func ReportFSMetrics(_ context.Context, p *plugins.Plugin) (*plugins.Plugin, err
|
||||
return p, nil
|
||||
}
|
||||
|
||||
// ReportAssetMetrics reports plugin asset information for all non-core plugins.
|
||||
func ReportAssetMetrics(_ context.Context, p *plugins.Plugin) (*plugins.Plugin, error) {
|
||||
if p.IsCorePlugin() {
|
||||
// No metrics for core plugins
|
||||
return p, nil
|
||||
}
|
||||
|
||||
u, err := url.ParseRequestURI(p.BaseURL)
|
||||
if err == nil && u.Host != "" {
|
||||
metrics.SetPluginAssetInformation(p.ID, "remote")
|
||||
return p, nil
|
||||
}
|
||||
|
||||
metrics.SetPluginAssetInformation(p.ID, "local")
|
||||
return p, nil
|
||||
}
|
||||
|
||||
// ReportCloudProvisioningMetrics reports plugin cloud provisioning information for all non-core plugins.
|
||||
func ReportCloudProvisioningMetrics(ppManaged provisionedplugins.Manager) initialization.InitializeFunc {
|
||||
cloudProvisioningMethod := plugins.CloudProvisioningMethodNone
|
||||
|
||||
Reference in New Issue
Block a user