Add MFolderIDsServiceCount to count folderIDs in services pkg (#81237)
This commit is contained in:
@@ -13,6 +13,7 @@ import (
|
||||
|
||||
"github.com/grafana/grafana/pkg/components/simplejson"
|
||||
"github.com/grafana/grafana/pkg/infra/log"
|
||||
"github.com/grafana/grafana/pkg/infra/metrics"
|
||||
"github.com/grafana/grafana/pkg/services/accesscontrol"
|
||||
"github.com/grafana/grafana/pkg/services/dashboards"
|
||||
"github.com/grafana/grafana/pkg/services/folder"
|
||||
@@ -247,6 +248,7 @@ func (fr *FileReader) saveDashboard(ctx context.Context, path string, folderID i
|
||||
// keeps track of which UIDs and titles we have already provisioned
|
||||
dash := jsonFile.dashboard
|
||||
provisioningMetadata.uid = dash.Dashboard.UID
|
||||
metrics.MFolderIDsServiceCount.WithLabelValues(metrics.Provisioning).Inc()
|
||||
// nolint:staticcheck
|
||||
provisioningMetadata.identity = dashboardIdentity{title: dash.Dashboard.Title, folderID: dash.Dashboard.FolderID}
|
||||
|
||||
@@ -268,6 +270,7 @@ func (fr *FileReader) saveDashboard(ctx context.Context, path string, folderID i
|
||||
}
|
||||
|
||||
if upToDate {
|
||||
metrics.MFolderIDsServiceCount.WithLabelValues(metrics.Provisioning).Inc()
|
||||
// nolint:staticcheck
|
||||
fr.log.Debug("provisioned dashboard is up to date", "provisioner", fr.Cfg.Name, "file", path, "folderId", dash.Dashboard.FolderID, "folderUid", dash.Dashboard.FolderUID)
|
||||
return provisioningMetadata, nil
|
||||
@@ -283,6 +286,7 @@ func (fr *FileReader) saveDashboard(ctx context.Context, path string, folderID i
|
||||
}
|
||||
|
||||
if !fr.isDatabaseAccessRestricted() {
|
||||
metrics.MFolderIDsServiceCount.WithLabelValues(metrics.Provisioning).Inc()
|
||||
// nolint:staticcheck
|
||||
fr.log.Debug("saving new dashboard", "provisioner", fr.Cfg.Name, "file", path, "folderId", dash.Dashboard.FolderID, "folderUid", dash.Dashboard.FolderUID)
|
||||
dp := &dashboards.DashboardProvisioning{
|
||||
@@ -296,6 +300,7 @@ func (fr *FileReader) saveDashboard(ctx context.Context, path string, folderID i
|
||||
return provisioningMetadata, err
|
||||
}
|
||||
} else {
|
||||
metrics.MFolderIDsServiceCount.WithLabelValues(metrics.Provisioning).Inc()
|
||||
// nolint:staticcheck
|
||||
fr.log.Warn("Not saving new dashboard due to restricted database access", "provisioner", fr.Cfg.Name,
|
||||
"file", path, "folderId", dash.Dashboard.FolderID)
|
||||
@@ -324,6 +329,7 @@ func (fr *FileReader) getOrCreateFolder(ctx context.Context, cfg *config, servic
|
||||
return 0, "", ErrFolderNameMissing
|
||||
}
|
||||
|
||||
metrics.MFolderIDsServiceCount.WithLabelValues(metrics.Provisioning).Inc()
|
||||
cmd := &dashboards.GetDashboardQuery{
|
||||
Title: &folderName,
|
||||
FolderID: util.Pointer(int64(0)), // nolint:staticcheck
|
||||
@@ -352,6 +358,7 @@ func (fr *FileReader) getOrCreateFolder(ctx context.Context, cfg *config, servic
|
||||
if err != nil {
|
||||
return 0, "", err
|
||||
}
|
||||
metrics.MFolderIDsServiceCount.WithLabelValues(metrics.Provisioning).Inc()
|
||||
// nolint:staticcheck
|
||||
return f.ID, f.UID, nil
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/grafana/grafana/pkg/components/simplejson"
|
||||
"github.com/grafana/grafana/pkg/infra/metrics"
|
||||
"github.com/grafana/grafana/pkg/services/dashboards"
|
||||
"github.com/grafana/grafana/pkg/services/provisioning/values"
|
||||
)
|
||||
@@ -63,6 +64,7 @@ func createDashboardJSON(data *simplejson.Json, lastModified time.Time, cfg *con
|
||||
dash.Overwrite = true
|
||||
dash.OrgID = cfg.OrgID
|
||||
dash.Dashboard.OrgID = cfg.OrgID
|
||||
metrics.MFolderIDsServiceCount.WithLabelValues(metrics.Provisioning).Inc()
|
||||
// nolint:staticcheck
|
||||
dash.Dashboard.FolderID = folderID
|
||||
dash.Dashboard.FolderUID = folderUID
|
||||
|
||||
@@ -5,6 +5,7 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/grafana/grafana/pkg/infra/log"
|
||||
"github.com/grafana/grafana/pkg/infra/metrics"
|
||||
)
|
||||
|
||||
type duplicate struct {
|
||||
@@ -102,6 +103,7 @@ func (c *duplicateValidator) logWarnings(duplicatesByOrg map[int64]duplicateEntr
|
||||
|
||||
for id, usage := range duplicates.Titles {
|
||||
if usage.Sum > 1 {
|
||||
metrics.MFolderIDsServiceCount.WithLabelValues(metrics.Provisioning).Inc()
|
||||
// nolint:staticcheck
|
||||
c.logger.Warn("dashboard title is not unique in folder", "orgId", orgID, "title", id.title, "folderID", id.folderID, "times",
|
||||
usage.Sum, "providers", keysToSlice(usage.InvolvedReaders))
|
||||
|
||||
Reference in New Issue
Block a user