diff --git a/grafana/rmf-app/pkg/plugin/config.go b/grafana/rmf-app/pkg/plugin/config.go index 5ab25b57..902d0112 100644 --- a/grafana/rmf-app/pkg/plugin/config.go +++ b/grafana/rmf-app/pkg/plugin/config.go @@ -44,12 +44,13 @@ type Config struct { // Custom RMF settings. CacheSizeRaw string `json:"cacheSize"` // Legacy custom RMF settings. We should ge rid of these at some point. - Server *string `json:"path"` - Port string `json:"port"` - SSL bool `json:"ssl"` - Username string `json:"userName"` - Password string `json:"password"` - SSLVerify bool `json:"skipVerify"` // NB: the meaning of JSON field is inverted. + Server *string `json:"path"` + Port string `json:"port"` + SSL bool `json:"ssl"` + Username string `json:"userName"` + Password string `json:"password"` + SSLVerify bool `json:"skipVerify"` // NB: the meaning of JSON field is inverted. + OmegamonDs string `json:"omegamonDs"` } } diff --git a/grafana/rmf-app/pkg/plugin/datasource.go b/grafana/rmf-app/pkg/plugin/datasource.go index 4b052967..f4f68d8e 100644 --- a/grafana/rmf-app/pkg/plugin/datasource.go +++ b/grafana/rmf-app/pkg/plugin/datasource.go @@ -23,6 +23,7 @@ import ( "errors" "net/http" "runtime/debug" + "slices" "strings" "sync" "time" @@ -63,6 +64,7 @@ type RMFDatasource struct { frameCache *cache.FrameCache ddsClient *dds.Client single singleflight.Group + omegamonDs string } // NewRMFDatasource creates a new instance of the RMF datasource. @@ -79,6 +81,7 @@ func NewRMFDatasource(ctx context.Context, settings backend.DataSourceInstanceSe config.JSON.TlsSkipVerify, config.JSON.DisableCompression) ds.channelCache = cache.NewChannelCache(ChannelCacheSizeMB) ds.frameCache = cache.NewFrameCache(config.CacheSize) + ds.omegamonDs = config.JSON.OmegamonDs logger.Info("initialized a datasource", "uid", settings.UID, "name", settings.Name, "url", config.URL, "timeout", config.Timeout, "cacheSize", config.CacheSize, @@ -148,13 +151,28 @@ func (ds *RMFDatasource) CallResource(ctx context.Context, req *backend.CallReso switch req.Path { // FIXME: it's a contained.xml request for M3 resource tree. Re-factor accordingly. case "variablequery": - // Extract the query parameter from the POST request - jsonStr := string(req.Body) varRequest := VariableQueryRequest{} - err := json.Unmarshal([]byte(jsonStr), &varRequest) + err := json.Unmarshal(req.Body, &varRequest) if err != nil { return log.ErrorWithId(logger, log.InternalError, "could not unmarshal data", "error", err) } + q := varRequest.Query + q = strings.Trim(q, " ") + q = strings.ToLower(q) + + switch q { + case "sysplex": + data, _ := ds.sysplexContainedJson() + return sender.Send(&backend.CallResourceResponse{Status: http.StatusOK, Body: data}) + case "systems": + data, _ := ds.systemsContainedJson() + return sender.Send(&backend.CallResourceResponse{Status: http.StatusOK, Body: data}) + case "omegamonds": + data, _ := ds.omegamonContainedJson() + return sender.Send(&backend.CallResourceResponse{Status: http.StatusOK, Body: data}) + } + + // Extract the query parameter from the POST request ddsResource := varRequest.Query if len(strings.TrimSpace(ddsResource)) == 0 { return log.ErrorWithId(logger, log.InputError, "variable query cannot be blank") @@ -184,6 +202,50 @@ func (ds *RMFDatasource) CallResource(ctx context.Context, req *backend.CallReso } } +func (ds *RMFDatasource) sysplexContainedJson() ([]byte, error) { + sysplex := ds.ddsClient.GetSysplex() + return toContainedJson([]string{sysplex}) +} + +func (ds *RMFDatasource) systemsContainedJson() ([]byte, error) { + systems := ds.ddsClient.GetSystems() + slices.Sort(systems) + return toContainedJson(systems) +} + +func (ds *RMFDatasource) omegamonContainedJson() ([]byte, error) { + return toContainedJson([]string{ds.omegamonDs}) +} + +func toContainedJson(resources []string) ([]byte, error) { + type Resource struct { + Reslabel string `json:"reslabel"` + } + type Contained struct { + Resource []Resource `json:"resource"` + } + type ContainedResource struct { + Contained Contained `json:"contained"` + } + type Ddsml struct { + ContainedResourcesList []ContainedResource `json:"containedResourcesList"` + } + + contained := Contained{Resource: []Resource{}} + for _, res := range resources { + contained.Resource = append(contained.Resource, Resource{Reslabel: "," + res + ","}) + } + + var containedResource = ContainedResource{ + Contained: contained, + } + + result := Ddsml{ + ContainedResourcesList: []ContainedResource{containedResource}, + } + return json.Marshal(result) +} + type RequestParams struct { Resource struct { Value string `json:"value"` diff --git a/grafana/rmf-app/pkg/plugin/dds/client.go b/grafana/rmf-app/pkg/plugin/dds/client.go index 7d47c293..011b2081 100644 --- a/grafana/rmf-app/pkg/plugin/dds/client.go +++ b/grafana/rmf-app/pkg/plugin/dds/client.go @@ -64,6 +64,8 @@ type Client struct { httpClient *http.Client headerMap *HeaderMap timeData *TimeData + resource *Resource + systems []string useXmlExt atomic.Bool stopChan chan struct{} @@ -118,7 +120,7 @@ func (c *Client) sync() { } func (c *Client) updateCache() { - c.updateTimeData() + c.updateMetadata() c.updateHeaders() } @@ -239,15 +241,15 @@ func (c *Client) ensureTimeData() *TimeData { timeData := c.timeData c.rwMutex.RUnlock() if timeData == nil { - timeData = c.updateTimeData() + timeData = c.updateMetadata() } return timeData } -func (c *Client) updateTimeData() *TimeData { - logger := log.Logger.With("func", "updateTimeData") +func (c *Client) updateMetadata() *TimeData { + logger := log.Logger.With("func", "updateMetadata") result, _, _ := c.single.Do("timeData", func() (any, error) { - response, err := c.Get(PerformPath, "resource", ",,SYSPLEX", "id", "8D0D50") + response, err := c.Get(PerformPath, "resource", ",,SYSPLEX", "id", "8D0D60") if err != nil { logger.Error("unable to fetch DDS time data", "error", err) return nil, err @@ -257,8 +259,15 @@ func (c *Client) updateTimeData() *TimeData { logger.Error("unable to fetch DDS time data", "error", "no time data in DDS response") return nil, err } + resource := response.Reports[0].Resource + if resource == nil { + logger.Error("unable to fetch DDS resource", "error", "no resource data in DDS response") + } + systems := response.Reports[0].GetRowNames() c.rwMutex.Lock() c.timeData = timeData + c.resource = resource + c.systems = systems c.rwMutex.Unlock() logger.Debug("DDS time data updated") return timeData, nil @@ -277,3 +286,16 @@ func (c *Client) GetCachedMintime() time.Duration { } return time.Duration(minTime) * time.Second } + +func (c *Client) GetSysplex() string { + c.ensureTimeData() + if c.resource != nil { + return c.resource.GetName() + } + return "" +} + +func (c *Client) GetSystems() []string { + c.ensureTimeData() + return c.systems +} diff --git a/grafana/rmf-app/pkg/plugin/dds/response.go b/grafana/rmf-app/pkg/plugin/dds/response.go index 65d731c6..d1cc8002 100644 --- a/grafana/rmf-app/pkg/plugin/dds/response.go +++ b/grafana/rmf-app/pkg/plugin/dds/response.go @@ -19,6 +19,7 @@ package dds import ( "fmt" + "strings" "time" ) @@ -55,12 +56,23 @@ type Report struct { Metric *Metric Message *Message Caption Caption + Resource *Resource `json:"resource"` Headers struct { Cols []Col `json:"col"` } `json:"columnHeaders"` Rows []Row `json:"row"` } +func (r Report) GetRowNames() []string { + var names []string + if r.Rows != nil { + for _, row := range r.Rows { + names = append(names, row.Cols[0]) + } + } + return names +} + type TimeData struct { // FIXME: don't use these in report headers: they are in DDS timezone. Remove from the mapping. LocalStart DateTime `json:"localStart"` @@ -81,6 +93,19 @@ type TimeData struct { } `json:"dataRange"` } +type Resource struct { + Reslabel string `json:"reslabel"` + Restype string `json:"restype"` +} + +func (r Resource) GetName() string { + ss := strings.Split(r.Reslabel, ",") + if len(ss) > 1 { + return ss[1] + } + return r.Reslabel +} + type DateTime struct { time.Time } diff --git a/grafana/rmf-app/pkg/plugin/frame/frame.go b/grafana/rmf-app/pkg/plugin/frame/frame.go index f85268d7..5fffd335 100644 --- a/grafana/rmf-app/pkg/plugin/frame/frame.go +++ b/grafana/rmf-app/pkg/plugin/frame/frame.go @@ -50,45 +50,51 @@ func NoDataFrame(t time.Time) *data.Frame { ) } -func Build(ddsResponse *dds.Response, headers *dds.HeaderMap, wide bool) (*data.Frame, error) { - logger := log.Logger.With("func", "Build") +func validateResponse(ddsResponse *dds.Response) error { + logger := log.Logger.With("func", "validateResponse") reportsNum := len(ddsResponse.Reports) if reportsNum == 0 { - return nil, errors.New("no reports in DDS response") + return errors.New("no reports in DDS response") } else if reportsNum > 1 { - return nil, fmt.Errorf("too many reports (%d) in DDS response", reportsNum) + return fmt.Errorf("too many reports (%d) in DDS response", reportsNum) } report := ddsResponse.Reports[0] if message := report.Message; message != nil { if _, ok := dds.AcceptableMessages[message.Id]; !ok { - return nil, message + return message } else { logger.Debug(message.Error()) } } if report.TimeData == nil { - return nil, errors.New("no time data in DDS response") + return errors.New("no time data in DDS response") } if report.Metric == nil { - return nil, errors.New("no metric data in DDS response") + return errors.New("no metric data in DDS response") } if _, ok := dds.SupportedFormats[report.Metric.Format]; !ok { - return nil, fmt.Errorf("unsupported data format (%s) in DDS response", report.Metric.Format) + return fmt.Errorf("unsupported data format (%s) in DDS response", report.Metric.Format) } + return nil +} +func Build(ddsResponse *dds.Response, headers *dds.HeaderMap, wide bool) (*data.Frame, error) { + err := validateResponse(ddsResponse) + if err != nil { + return nil, err + } + report := ddsResponse.Reports[0] format := report.Metric.Format frameName := strings.Trim(report.Metric.Description, " ") - var newFrame *data.Frame if format == dds.ReportFormat { - newFrame = buildForReport(&report, headers, frameName) + return buildForReport(&report, headers, frameName), nil } else if wide { return buildWideForMetric(&report, frameName), nil } else { return buildLongForMetric(&report, frameName), nil } - return newFrame, nil } // buildWideForMetric creates a time series data frame for a metric from pre-parsed DDS response. diff --git a/grafana/rmf-app/src/components/Root/Root.tsx b/grafana/rmf-app/src/components/Root/Root.tsx index 330d525f..4af3c16f 100644 --- a/grafana/rmf-app/src/components/Root/Root.tsx +++ b/grafana/rmf-app/src/components/Root/Root.tsx @@ -15,16 +15,16 @@ * limitations under the License. */ import React, { PureComponent } from 'react'; -import { PanelContainer, Button, TextLink, Box, Icon, Alert } from '@grafana/ui'; +import { PanelContainer, Button, TextLink, Box, Icon, Alert, InlineSwitch, Input, InlineField } from '@grafana/ui'; import { locationService, getBackendSrv, getDataSourceSrv, getAppEvents } from '@grafana/runtime'; import { AppRootProps, AppEvents } from '@grafana/data'; -import { DDS_OPEN_METRICS_DOC_URL, DATA_SOURCE_TYPE, APP_LOGO_URL } from '../../constants'; +import { DDS_OPEN_METRICS_DOC_URL, DATA_SOURCE_TYPE, APP_LOGO_URL, FALCON_AS_DASHBOARD, FALCON_SYS_DASHBOARD } from '../../constants'; import { GlobalSettings } from '../../types'; import { DASHBOARDS as DDS_DASHBOARDS } from '../../dashboards/dds'; import { DASHBOARDS as PROM_DASHBOARDS } from '../../dashboards/prometheus'; -import { findFolder, deleteFolder, installDashboards } from './utils'; -import { FolderStatus, Operation, OperCode, OperStatus } from './types'; +import { findFolder, deleteFolder, installDashboards, findDashboard } from './utils'; +import { FolderStatus, Operation, OperCode, OperStatus, FalconStatus } from './types'; import { StatusIcon } from './StatusIcon'; import { Space } from './Space'; import { Header } from './Header'; @@ -40,6 +40,7 @@ interface Props extends AppRootProps {} interface State { dds: FolderStatus; prom: FolderStatus; + falcon: FalconStatus; } export class Root extends PureComponent { @@ -56,6 +57,11 @@ export class Root extends PureComponent { installed: false, operation: { code: OperCode.None, status: OperStatus.None }, }, + falcon: { + enabled: false, + asDashboard: FALCON_AS_DASHBOARD, + sysDashboard: FALCON_SYS_DASHBOARD, + } }; } @@ -67,6 +73,8 @@ export class Root extends PureComponent { try { const ddsFolderPath = await findFolder(DDS_FOLDER_UID); const promFolderPath = await findFolder(PROM_FOLDER_UID); + const asDashboard = await findDashboard("Job CPU Details", ["omegamon", "zos", "lpar", "cpu"]); + const sysDashboard = await findDashboard("z/OS Enterprise Overview", ["omegamon", "zos", "enterprise"]); this.setState((prevState) => ({ dds: { ...prevState.dds, @@ -78,6 +86,11 @@ export class Root extends PureComponent { installed: promFolderPath !== undefined, folderPath: promFolderPath || PROM_FOLDER_NAME, }, + falcon: { + ...prevState.falcon, + asDashboard: asDashboard !== undefined ? asDashboard : FALCON_AS_DASHBOARD, + sysDashboard: sysDashboard !== undefined ? sysDashboard : FALCON_SYS_DASHBOARD, + } })); } catch (error) { console.error('failed to update state', error); @@ -113,7 +126,7 @@ export class Root extends PureComponent { })); }; - processFolder = async (folderUid: string, operCode: OperCode) => { + processFolder = async (folderUid: string, operCode: OperCode, falcon: FalconStatus) => { const isDds = folderUid === DDS_FOLDER_UID; const defaultFolderName = isDds ? DDS_FOLDER_NAME : PROM_FOLDER_NAME; const dashboards = isDds ? DDS_DASHBOARDS : PROM_DASHBOARDS; @@ -128,7 +141,7 @@ export class Root extends PureComponent { await deleteFolder(folderUid); } if (operCode === OperCode.Reset || operCode === OperCode.Install) { - await installDashboards(folderUid, defaultFolderName, dashboards); + await installDashboards(folderUid, defaultFolderName, dashboards, falcon); } this.setFolderState(isDds, { code: operCode, @@ -153,7 +166,7 @@ export class Root extends PureComponent { }; render() { - const { dds, prom } = this.state; + const { dds, prom, falcon } = this.state; const isBusy = dds.operation.status === OperStatus.InProgress || prom.operation.status === OperStatus.InProgress; return ( @@ -196,6 +209,44 @@ export class Root extends PureComponent { [UID='{DDS_FOLDER_UID}']

+

+

+ Link it with OMEGAMON dashboards (experimental): + + { + falcon.enabled = e.currentTarget.checked; + this.updateFolderState(); + }} + /> +

+ {falcon.enabled && ( + <> +

+ + { + falcon.asDashboard = e.target.value; + }} + /> + +

+

+ + { + falcon.sysDashboard = e.target.value; + }} + /> + +

+

+ + Note: You must associate RMF data source with OMEGAMON data source (see RMF data source edit page) +

+ + )} +

@@ -213,7 +264,7 @@ export class Root extends PureComponent { dds.operation.code === OperCode.Install || dds.operation.code === OperCode.Reset ) : async () => { - await this.processFolder(DDS_FOLDER_UID, OperCode.Install); + await this.processFolder(DDS_FOLDER_UID, OperCode.Install, falcon); } } > @@ -229,7 +280,7 @@ export class Root extends PureComponent { fill="outline" icon={'process'} onClick={async () => { - await this.processFolder(DDS_FOLDER_UID, OperCode.Reset); + await this.processFolder(DDS_FOLDER_UID, OperCode.Reset, falcon); }} > Update / Reset @@ -243,7 +294,7 @@ export class Root extends PureComponent { fill="outline" icon={'trash-alt'} onClick={async () => { - await this.processFolder(DDS_FOLDER_UID, OperCode.Delete); + await this.processFolder(DDS_FOLDER_UID, OperCode.Delete, falcon); }} > Delete @@ -289,7 +340,7 @@ export class Root extends PureComponent { prom.operation.code === OperCode.Install || prom.operation.code === OperCode.Reset ) : async () => { - await this.processFolder(PROM_FOLDER_UID, OperCode.Install); + await this.processFolder(PROM_FOLDER_UID, OperCode.Install, falcon); } } > @@ -305,7 +356,7 @@ export class Root extends PureComponent { fill="outline" icon={'process'} onClick={async () => { - await this.processFolder(PROM_FOLDER_UID, OperCode.Reset); + await this.processFolder(PROM_FOLDER_UID, OperCode.Reset, falcon); }} > Update / Reset @@ -319,7 +370,7 @@ export class Root extends PureComponent { fill="outline" icon={'trash-alt'} onClick={async () => { - await this.processFolder(PROM_FOLDER_UID, OperCode.Delete); + await this.processFolder(PROM_FOLDER_UID, OperCode.Delete, falcon); }} > Delete diff --git a/grafana/rmf-app/src/components/Root/types.ts b/grafana/rmf-app/src/components/Root/types.ts index 07ef1028..7c7aa466 100644 --- a/grafana/rmf-app/src/components/Root/types.ts +++ b/grafana/rmf-app/src/components/Root/types.ts @@ -39,3 +39,9 @@ export interface FolderStatus { installed: boolean; operation: Operation; } + +export interface FalconStatus { + enabled: boolean; + asDashboard: string; + sysDashboard: string; +} \ No newline at end of file diff --git a/grafana/rmf-app/src/components/Root/utils.ts b/grafana/rmf-app/src/components/Root/utils.ts index db110d49..c5c8e584 100644 --- a/grafana/rmf-app/src/components/Root/utils.ts +++ b/grafana/rmf-app/src/components/Root/utils.ts @@ -14,8 +14,17 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +import { FalconStatus } from './types'; + const FOLDERS_API = '/api/folders'; const DASHBOARDS_API = '/api/dashboards/db'; +const RMF_DATASOURCE_EXPR = "${datasource}"; +const SYSPLEX_NAME = "sysplex"; +const LPAR = "LPAR"; +const OMEGAMON_DS = "OmegamonDs"; +const OMEG_PLEX_LPAR_MVSSYS_EXPR = "${" + SYSPLEX_NAME + "}:${" + LPAR + "}:MVSSYS"; +const JOB_NAME_FIELD = "Job Name"; +const ASID_FIELD = "ASID (dec)"; // Don't use `getBackendSrv` to avoid built-in notifications: they won't work as we need them. @@ -60,7 +69,28 @@ export async function deleteFolder(uid: string) { } } -async function createDashboard(folderUid: string, dashboard: object) { +export async function findDashboard(query: string, tags : string[]) : Promise { + let url = "/api/search?query=" + query; + tags.forEach(tag => { + url += "&tag=" + tag; + }); + const res = await fetch(url); + if (res.ok) { + const data = await res.json(); + if (data.length === 1) { + return data[0].url; + } + } + return undefined; +} + +async function createDashboard(folderUid: string, dashboard: object, falcon: FalconStatus) { + if (falcon.enabled && falconJobRelated(dashboard)) { + falconJobUpdate(falcon, dashboard); + } + if (falcon.enabled && falconSystemRelated(dashboard)) { + falconSystemUpdate(falcon, dashboard); + } // Don't use `getBackendSrv` to avoid notifications const res = await fetch(DASHBOARDS_API, { method: 'POST', @@ -74,10 +104,147 @@ async function createDashboard(folderUid: string, dashboard: object) { } } -export async function installDashboards(folderUid: string, defaultFolderName: string, dashboards: object[]) { +export async function installDashboards(folderUid: string, defaultFolderName: string, dashboards: object[], falcon: FalconStatus) { const folderPath = await findFolder(folderUid); if (folderPath === undefined) { await createFolder(folderUid, defaultFolderName); } - await Promise.all(dashboards.map((dashboard) => createDashboard(folderUid, dashboard))); + await Promise.all(dashboards.map((dashboard) => createDashboard(folderUid, dashboard, falcon))); } + +export const FALCON_JOB_RELATED = [ + "DELAY", "OPD", "PROC", "PROCU", "STOR", "STORC", "STORCR", "STORF", "STORM", "USAGE" +]; + +export const FALCON_SYSTEM_RELATED = [ + ...FALCON_JOB_RELATED, + "CHANNEL", "CPC", "DELAY", "DEV", "DEVR", "DSND", "EADM", "ENCLAVE", "ENQ", "HSM", "JES", "IOQ", "LOCKSP", "LOCKSU", + "OPD", "PCIE", "PROC", "PROCU", "STOR", "STORC", "STORCR", "STORF", "STORM", "STORR", "STORS", "SYSINFO", "USAGE", + "Overall Image Activity", "Overall Image Activity (Timeline)", +]; + +function falconJobRelated(dashboard: any): boolean { + return FALCON_JOB_RELATED.indexOf(dashboard.title) > -1; +} + +function falconSystemRelated(dashboard: any): boolean { + return FALCON_SYSTEM_RELATED.indexOf(dashboard.title) > -1; +} + +function addVars(dashboard: any) { + var sysplex_name_exist: boolean = false; + var omegamon_ds_exist: boolean = false; + dashboard.templating.list.forEach((t: any) => { + if (t.name === LPAR) { + t.query = "systems"; + t.definition = t.query; + } + if (t.name === SYSPLEX_NAME) { + sysplex_name_exist = true; + } + if (t.name === OMEGAMON_DS) { + omegamon_ds_exist = true; + } + }) + + if (!sysplex_name_exist) { + dashboard.templating.list.push({ + name: SYSPLEX_NAME, + datasource: { + type: "ibm-rmf-datasource", + uid: RMF_DATASOURCE_EXPR + }, + type: "query", + query: "sysplex", + hide: 1, + includeAll: false, + multi: false, + allowCustomValue: false, + }) + } + + if (!omegamon_ds_exist) { + dashboard.templating.list.push({ + name: OMEGAMON_DS, + label: "OMEGAMON Data source", + description: "OMEGAMON Data source (optional)", + datasource: { + type: "ibm-rmf-datasource", + uid: RMF_DATASOURCE_EXPR + }, + type: "query", + query: "OmegamonDs", + hide: 2, + includeAll: false, + multi: false, + allowCustomValue: false, + }) + } + +} + +function falconJobUpdate(falcon: FalconStatus, dashboard: any) { + addVars(dashboard); + + const JOB_NAME_EXPR = "${__data.fields[\"" + JOB_NAME_FIELD + "\"]}"; + const ASID_EXPR = "${__data.fields[\"" + ASID_FIELD + "\"]}"; + let baseUrl = falcon.asDashboard; + if (baseUrl.indexOf("?") > -1) { + baseUrl += "&"; + } else { + baseUrl += "?"; + } + + dashboard.panels.forEach((p: any) => { + p.fieldConfig.overrides = []; + p.fieldConfig.overrides.push({ + matcher: { + id: "byName", + options: JOB_NAME_FIELD, + }, + properties: [ + { + id: "links", + value : [ + { + targetBlank: true, + title: "OMEGAMON details for " + JOB_NAME_EXPR, + url: baseUrl + "var-dataSource=${" + OMEGAMON_DS + "}" + + "&var-managedSystem=" + OMEG_PLEX_LPAR_MVSSYS_EXPR + + "&var-_addressSpaceName=" + JOB_NAME_EXPR + + "&var-_ASID=" + ASID_EXPR + + "&var-_iAddressSpaceName=" + JOB_NAME_EXPR + + "&var-_iASID=" + ASID_EXPR + + "&from=$__from" + + "&to=$__to", + } + ] + } + ] + }); + }); +} + +function falconSystemUpdate(falcon: FalconStatus, dashboard: any) { + addVars(dashboard); + let baseUrl = falcon.sysDashboard; + if (baseUrl.indexOf("?") > -1) { + baseUrl += "&"; + } else { + baseUrl += "?"; + } + + if (!dashboard.links) { + dashboard.links = []; + } + + dashboard.links.push({ + type: "link", + icon: "dashboard", + keepTime: true, + targetBlank: true, + title: "z/OS Enterprise Overview", + url: baseUrl + "var-dataSource=${" + OMEGAMON_DS + "}" + + "&var-managedSystem=" + OMEG_PLEX_LPAR_MVSSYS_EXPR, + }); +} \ No newline at end of file diff --git a/grafana/rmf-app/src/constants.ts b/grafana/rmf-app/src/constants.ts index 4d388c6f..17a0c99b 100644 --- a/grafana/rmf-app/src/constants.ts +++ b/grafana/rmf-app/src/constants.ts @@ -27,3 +27,5 @@ export const DATA_SOURCE_TYPE = dataSourcePluginJson.id; export const DATA_SOURCE_NAME = dataSourcePluginJson.name; export const DDS_OPEN_METRICS_DOC_URL = 'https://www.ibm.com/docs/en/zos/3.1.0?topic=functions-setting-up-distributed-data-server-zos'; +export const FALCON_AS_DASHBOARD = "d/ees8cbtsyfshse/job-cpu-details"; +export const FALCON_SYS_DASHBOARD = "d/eefk6eunuubk0e/z-os-enterprise-overview"; \ No newline at end of file diff --git a/grafana/rmf-app/src/dashboards/dds/CACHDET.json b/grafana/rmf-app/src/dashboards/dds/CACHDET.json index 8b3b3787..4d45f736 100644 --- a/grafana/rmf-app/src/dashboards/dds/CACHDET.json +++ b/grafana/rmf-app/src/dashboards/dds/CACHDET.json @@ -53,7 +53,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Control Unit Cache Details", "fieldConfig": { @@ -96,7 +96,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "a30ba0f0-e67a-44b0-bfe6-3b437603e414", @@ -391,15 +391,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, - "description": "Sysplex", + "description": "Data source", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -407,6 +407,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/CACHSUM.json b/grafana/rmf-app/src/dashboards/dds/CACHSUM.json index 1c8c116c..7be75793 100644 --- a/grafana/rmf-app/src/dashboards/dds/CACHSUM.json +++ b/grafana/rmf-app/src/dashboards/dds/CACHSUM.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Control Unit Cache Summary", "fieldConfig": { @@ -96,7 +96,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "0a230d99-a837-4aff-b520-3b6c68d5a8e0", @@ -353,15 +353,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, - "description": "Sysplex", + "description": "Data source", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -369,6 +369,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/CFACT.json b/grafana/rmf-app/src/dashboards/dds/CFACT.json index 9eb021ca..cc2bda42 100644 --- a/grafana/rmf-app/src/dashboards/dds/CFACT.json +++ b/grafana/rmf-app/src/dashboards/dds/CFACT.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Coupling Facility Activity", "fieldConfig": { @@ -95,7 +95,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "26f5f14b-f506-4c31-907c-9f32ccd314e4", @@ -406,15 +406,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, - "description": "Sysplex", + "description": "Data source", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -422,6 +422,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/CFOVER.json b/grafana/rmf-app/src/dashboards/dds/CFOVER.json index 1896fb2b..4b9402d0 100644 --- a/grafana/rmf-app/src/dashboards/dds/CFOVER.json +++ b/grafana/rmf-app/src/dashboards/dds/CFOVER.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Coupling Facility Overview", "fieldConfig": { @@ -95,7 +95,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "0c882408-b619-4f60-a8a3-37be2c38af18", @@ -302,15 +302,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, - "description": "Sysplex", + "description": "Data source", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -318,6 +318,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/CFSYS.json b/grafana/rmf-app/src/dashboards/dds/CFSYS.json index 7845b22d..1d36454c 100644 --- a/grafana/rmf-app/src/dashboards/dds/CFSYS.json +++ b/grafana/rmf-app/src/dashboards/dds/CFSYS.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Coupling Facility Systems View", "fieldConfig": { @@ -95,7 +95,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "c699b2d0-fa49-4b45-bae9-913739728e44", @@ -297,15 +297,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, - "description": "Sysplex", + "description": "Data source", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -313,6 +313,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/CHANNEL.json b/grafana/rmf-app/src/dashboards/dds/CHANNEL.json index 3d3888f2..f5577121 100644 --- a/grafana/rmf-app/src/dashboards/dds/CHANNEL.json +++ b/grafana/rmf-app/src/dashboards/dds/CHANNEL.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "I/O Channels", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "9f386c5a-cffd-4367-8065-189a5e4fe925", @@ -142,14 +142,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -161,15 +161,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/CPC.json b/grafana/rmf-app/src/dashboards/dds/CPC.json index 61808ddc..0f42d2d2 100644 --- a/grafana/rmf-app/src/dashboards/dds/CPC.json +++ b/grafana/rmf-app/src/dashboards/dds/CPC.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Central Processor Complex", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "de465562-c3f1-4548-93fb-d19e0cdb70e6", @@ -304,14 +304,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -323,15 +323,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/CRYOVW.json b/grafana/rmf-app/src/dashboards/dds/CRYOVW.json index 8281d798..b2501001 100644 --- a/grafana/rmf-app/src/dashboards/dds/CRYOVW.json +++ b/grafana/rmf-app/src/dashboards/dds/CRYOVW.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Crypto Hardware Overview", "fieldConfig": { @@ -95,7 +95,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "8ad04b33-d007-4e2c-866c-7f2dbeb9b6be", @@ -324,15 +324,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "description": "Sysplex", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -340,6 +340,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/Common Storage Activity (Timeline).json b/grafana/rmf-app/src/dashboards/dds/Common Storage Activity (Timeline).json index 675e60c9..5285b19f 100644 --- a/grafana/rmf-app/src/dashboards/dds/Common Storage Activity (Timeline).json +++ b/grafana/rmf-app/src/dashboards/dds/Common Storage Activity (Timeline).json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -129,7 +129,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -151,7 +151,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -178,7 +178,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -259,7 +259,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -281,7 +281,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -308,7 +308,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -385,7 +385,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "e0bde46f-4da8-44b3-9d7a-47a1885e9c4c", @@ -403,7 +403,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -480,7 +480,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "38368e80-de64-4bac-ae20-c18a53ad82e6", @@ -505,14 +505,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -520,6 +520,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/Common Storage Activity.json b/grafana/rmf-app/src/dashboards/dds/Common Storage Activity.json index 00bcdc3b..ff6afb81 100644 --- a/grafana/rmf-app/src/dashboards/dds/Common Storage Activity.json +++ b/grafana/rmf-app/src/dashboards/dds/Common Storage Activity.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -171,7 +171,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -193,7 +193,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -229,7 +229,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -343,7 +343,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -365,7 +365,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -401,7 +401,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -497,7 +497,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -523,7 +523,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -621,7 +621,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -659,9 +659,9 @@ }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -669,6 +669,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/Coupling Facility Overview (Timeline).json b/grafana/rmf-app/src/dashboards/dds/Coupling Facility Overview (Timeline).json index ebcaf8e9..1715f088 100644 --- a/grafana/rmf-app/src/dashboards/dds/Coupling Facility Overview (Timeline).json +++ b/grafana/rmf-app/src/dashboards/dds/Coupling Facility Overview (Timeline).json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "", "fieldConfig": { @@ -137,7 +137,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -164,7 +164,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "", "fieldConfig": { @@ -248,7 +248,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -275,7 +275,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "", "fieldConfig": { @@ -359,7 +359,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -381,7 +381,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "refId": "B", @@ -408,14 +408,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -423,6 +423,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/Coupling Facility Overview.json b/grafana/rmf-app/src/dashboards/dds/Coupling Facility Overview.json index 67a4ab70..10efd83c 100644 --- a/grafana/rmf-app/src/dashboards/dds/Coupling Facility Overview.json +++ b/grafana/rmf-app/src/dashboards/dds/Coupling Facility Overview.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "", "fieldConfig": { @@ -155,7 +155,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -182,7 +182,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "", "fieldConfig": { @@ -273,7 +273,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -300,7 +300,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "", "fieldConfig": { @@ -415,7 +415,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -437,7 +437,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "refId": "B", @@ -480,9 +480,9 @@ }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -490,6 +490,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/DELAY.json b/grafana/rmf-app/src/dashboards/dds/DELAY.json index e789a543..92f3a923 100644 --- a/grafana/rmf-app/src/dashboards/dds/DELAY.json +++ b/grafana/rmf-app/src/dashboards/dds/DELAY.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "All kinds of delays", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "b91a33da-135f-44a5-cfed-b3689f07856b", @@ -122,7 +122,7 @@ "% Delay Mount": true, "% Delay Quiesce": true, "% Delay XCF": true, - "ASID (dec)": true, + "ASID (dec)": false, "Channel Measurement Group": true, "FICON Deferred Operation Rate": true, "LPAR MSG Rate": true, @@ -155,14 +155,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -174,15 +174,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/DEV.json b/grafana/rmf-app/src/dashboards/dds/DEV.json index 76e901c1..2a3e4b32 100644 --- a/grafana/rmf-app/src/dashboards/dds/DEV.json +++ b/grafana/rmf-app/src/dashboards/dds/DEV.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Device delays", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "b088b1b8-86f7-4a06-ed7c-33f4859c3030", @@ -159,14 +159,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -178,15 +178,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/DEVR.json b/grafana/rmf-app/src/dashboards/dds/DEVR.json index 9e034da9..68000cb8 100644 --- a/grafana/rmf-app/src/dashboards/dds/DEVR.json +++ b/grafana/rmf-app/src/dashboards/dds/DEVR.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Device Resource Delays", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "5e502a01-3a37-4873-94ff-7b635ecaee3a", @@ -190,14 +190,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -209,15 +209,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/DSND.json b/grafana/rmf-app/src/dashboards/dds/DSND.json index e6639037..957ce1fe 100644 --- a/grafana/rmf-app/src/dashboards/dds/DSND.json +++ b/grafana/rmf-app/src/dashboards/dds/DSND.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Dataset Delays", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "1f674985-8c23-483d-bf70-7d637d6e262", @@ -142,14 +142,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -161,15 +161,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/EADM.json b/grafana/rmf-app/src/dashboards/dds/EADM.json index 89f2733b..fa6405c2 100644 --- a/grafana/rmf-app/src/dashboards/dds/EADM.json +++ b/grafana/rmf-app/src/dashboards/dds/EADM.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Extended Asynchronous Data Mover", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "dda59d24-7686-49e6-b45f-0f8e5b449dee", @@ -156,14 +156,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -175,15 +175,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/ENCLAVE.json b/grafana/rmf-app/src/dashboards/dds/ENCLAVE.json index e660dc6e..37f6ca71 100644 --- a/grafana/rmf-app/src/dashboards/dds/ENCLAVE.json +++ b/grafana/rmf-app/src/dashboards/dds/ENCLAVE.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Enclaves", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "87fa8279-0f6c-425e-835d-652e59e29ed9", @@ -305,14 +305,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -324,15 +324,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/ENQ.json b/grafana/rmf-app/src/dashboards/dds/ENQ.json index 97f791f5..3f7b86bb 100644 --- a/grafana/rmf-app/src/dashboards/dds/ENQ.json +++ b/grafana/rmf-app/src/dashboards/dds/ENQ.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Enqueue Delays", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "2e245147-c660-4f64-bcaf-326ba6d434ac", @@ -142,14 +142,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -161,15 +161,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/Execution Velocity (Timeline).json b/grafana/rmf-app/src/dashboards/dds/Execution Velocity (Timeline).json index 7a56b535..a9d09844 100644 --- a/grafana/rmf-app/src/dashboards/dds/Execution Velocity (Timeline).json +++ b/grafana/rmf-app/src/dashboards/dds/Execution Velocity (Timeline).json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -137,7 +137,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -159,7 +159,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -187,7 +187,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -265,7 +265,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -298,14 +298,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -313,6 +313,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/Execution Velocity.json b/grafana/rmf-app/src/dashboards/dds/Execution Velocity.json index 1964f757..8df76e9a 100644 --- a/grafana/rmf-app/src/dashboards/dds/Execution Velocity.json +++ b/grafana/rmf-app/src/dashboards/dds/Execution Velocity.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -167,7 +167,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -189,7 +189,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -225,7 +225,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -318,7 +318,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -359,9 +359,9 @@ }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -369,6 +369,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/General Activity (Timeline).json b/grafana/rmf-app/src/dashboards/dds/General Activity (Timeline).json index 3dfd8020..55886791 100644 --- a/grafana/rmf-app/src/dashboards/dds/General Activity (Timeline).json +++ b/grafana/rmf-app/src/dashboards/dds/General Activity (Timeline).json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -129,7 +129,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "b6137830-43ac-4fec-b516-07e80b0ab57a", @@ -143,7 +143,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "refId": "B", @@ -162,7 +162,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -239,7 +239,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "923072ca-7c82-42af-ea41-8c254f58da85", @@ -253,7 +253,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "refId": "B", @@ -268,7 +268,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "refId": "C", @@ -287,7 +287,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -364,7 +364,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "ab8cdb99-7217-42df-e6c1-a1602887bbd8", @@ -382,7 +382,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -459,7 +459,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "8cede5b5-8778-4862-8b7e-f476a6b9e56a", @@ -484,14 +484,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -499,6 +499,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/General Activity.json b/grafana/rmf-app/src/dashboards/dds/General Activity.json index db70fe1e..e44c4b79 100644 --- a/grafana/rmf-app/src/dashboards/dds/General Activity.json +++ b/grafana/rmf-app/src/dashboards/dds/General Activity.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -161,7 +161,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -183,7 +183,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -219,7 +219,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "", "fieldConfig": { @@ -302,7 +302,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -324,7 +324,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -347,7 +347,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -375,7 +375,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -468,7 +468,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -494,7 +494,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -587,7 +587,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -625,9 +625,9 @@ }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -635,6 +635,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/HSM.json b/grafana/rmf-app/src/dashboards/dds/HSM.json index 4a03d484..1c7b5c38 100644 --- a/grafana/rmf-app/src/dashboards/dds/HSM.json +++ b/grafana/rmf-app/src/dashboards/dds/HSM.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Hierarchical Storage Manager Delays", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "4ca5f811-7ce7-4cb5-9c8e-e82c744f7689", @@ -149,14 +149,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -168,15 +168,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/IOQ.json b/grafana/rmf-app/src/dashboards/dds/IOQ.json index eaa172fe..a40a04fa 100644 --- a/grafana/rmf-app/src/dashboards/dds/IOQ.json +++ b/grafana/rmf-app/src/dashboards/dds/IOQ.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "I/O Queuing", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "c53199a2-81e7-4063-9aa8-814de9ddec89", @@ -160,14 +160,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -179,15 +179,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/JES.json b/grafana/rmf-app/src/dashboards/dds/JES.json index 86c073c6..77cbde8f 100644 --- a/grafana/rmf-app/src/dashboards/dds/JES.json +++ b/grafana/rmf-app/src/dashboards/dds/JES.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Job Entry Subsystem Delays", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "9b725562-731d-424f-840e-832de4a70f2c", @@ -149,14 +149,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -168,15 +168,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/LOCKSP.json b/grafana/rmf-app/src/dashboards/dds/LOCKSP.json index 360dc13a..cd550222 100644 --- a/grafana/rmf-app/src/dashboards/dds/LOCKSP.json +++ b/grafana/rmf-app/src/dashboards/dds/LOCKSP.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Spin Lock Report", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "1898c684-d2dd-4b95-a655-e1c7170ad8e8", @@ -142,14 +142,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -161,15 +161,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/LOCKSU.json b/grafana/rmf-app/src/dashboards/dds/LOCKSU.json index 3cfc439a..434f6053 100644 --- a/grafana/rmf-app/src/dashboards/dds/LOCKSU.json +++ b/grafana/rmf-app/src/dashboards/dds/LOCKSU.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Suspend Lock Report", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "8003e165-ab46-4b61-94b7-a37f69adc5c8", @@ -142,14 +142,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -161,15 +161,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/OPD.json b/grafana/rmf-app/src/dashboards/dds/OPD.json index aae6683f..8a3fb626 100644 --- a/grafana/rmf-app/src/dashboards/dds/OPD.json +++ b/grafana/rmf-app/src/dashboards/dds/OPD.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "OMVS Process Data", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "1af174dd-1466-4d45-8c07-41f3f574f692", @@ -151,14 +151,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -167,18 +167,38 @@ "skipUrlSync": false, "type": "datasource" }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/Overall Image Activity (Timeline).json b/grafana/rmf-app/src/dashboards/dds/Overall Image Activity (Timeline).json index c237d4c4..1c8dfd73 100644 --- a/grafana/rmf-app/src/dashboards/dds/Overall Image Activity (Timeline).json +++ b/grafana/rmf-app/src/dashboards/dds/Overall Image Activity (Timeline).json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -130,7 +130,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -152,7 +152,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -179,7 +179,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "", "fieldConfig": { @@ -258,7 +258,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -284,7 +284,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -362,7 +362,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -388,7 +388,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -466,7 +466,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -499,14 +499,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -518,15 +518,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/Overall Image Activity.json b/grafana/rmf-app/src/dashboards/dds/Overall Image Activity.json index a2b8b445..807703cb 100644 --- a/grafana/rmf-app/src/dashboards/dds/Overall Image Activity.json +++ b/grafana/rmf-app/src/dashboards/dds/Overall Image Activity.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -145,7 +145,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -167,7 +167,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -203,7 +203,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "", "fieldConfig": { @@ -327,7 +327,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -353,7 +353,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -482,7 +482,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -508,7 +508,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -585,7 +585,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -623,9 +623,9 @@ }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -634,19 +634,39 @@ "skipUrlSync": false, "type": "datasource" }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, { "current": {}, "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/PCIE.json b/grafana/rmf-app/src/dashboards/dds/PCIE.json index cdf5cbd5..8bfa1bdb 100644 --- a/grafana/rmf-app/src/dashboards/dds/PCIE.json +++ b/grafana/rmf-app/src/dashboards/dds/PCIE.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "PCIE Activity", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "refId": "A", @@ -181,14 +181,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -200,15 +200,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/PROC.json b/grafana/rmf-app/src/dashboards/dds/PROC.json index 8779e370..f6a58cd8 100644 --- a/grafana/rmf-app/src/dashboards/dds/PROC.json +++ b/grafana/rmf-app/src/dashboards/dds/PROC.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Processor Delays", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "271e34ff-d57f-43d4-a897-6b8053983d24", @@ -115,7 +115,7 @@ "% Using for Processor Type": false, "% Workflow": true, "AAP on CP % Using": true, - "ASID (dec)": true, + "ASID (dec)": false, "Appl % for Processor Type": true, "CBP on CP % Using": true, "Capping Delay %": true, @@ -185,14 +185,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -204,15 +204,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/PROCU.json b/grafana/rmf-app/src/dashboards/dds/PROCU.json index a566cb52..d8ad34ab 100644 --- a/grafana/rmf-app/src/dashboards/dds/PROCU.json +++ b/grafana/rmf-app/src/dashboards/dds/PROCU.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Processor Usage", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "908ddeb5-eef7-4ab9-a3f0-4727805960d5", @@ -113,7 +113,7 @@ "excludeByName": { "AAP EAppl %": true, "AAP Time on CP %": true, - "ASID (dec)": true, + "ASID (dec)": false, "CBP EAppl %": true, "CBP Time on CP %": true, "Channel Measurement Group": true, @@ -157,14 +157,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -176,15 +176,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/Performance Index (Timeline).json b/grafana/rmf-app/src/dashboards/dds/Performance Index (Timeline).json index 85ffae53..342bb628 100644 --- a/grafana/rmf-app/src/dashboards/dds/Performance Index (Timeline).json +++ b/grafana/rmf-app/src/dashboards/dds/Performance Index (Timeline).json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -129,7 +129,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -155,7 +155,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -236,7 +236,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -269,14 +269,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -284,6 +284,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/Performance Index.json b/grafana/rmf-app/src/dashboards/dds/Performance Index.json index 51c781a7..6b1ea0b5 100644 --- a/grafana/rmf-app/src/dashboards/dds/Performance Index.json +++ b/grafana/rmf-app/src/dashboards/dds/Performance Index.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -171,7 +171,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -198,7 +198,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -316,7 +316,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -357,9 +357,9 @@ }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -367,6 +367,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/Response Time (Timeline).json b/grafana/rmf-app/src/dashboards/dds/Response Time (Timeline).json index 634e99bd..95bd4c24 100644 --- a/grafana/rmf-app/src/dashboards/dds/Response Time (Timeline).json +++ b/grafana/rmf-app/src/dashboards/dds/Response Time (Timeline).json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -130,7 +130,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -152,7 +152,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -179,7 +179,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -257,7 +257,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -279,7 +279,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -306,7 +306,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "", "fieldConfig": { @@ -386,7 +386,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -412,7 +412,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -491,7 +491,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -524,14 +524,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -539,6 +539,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/Response Time.json b/grafana/rmf-app/src/dashboards/dds/Response Time.json index e32c7a0d..7a3af63d 100644 --- a/grafana/rmf-app/src/dashboards/dds/Response Time.json +++ b/grafana/rmf-app/src/dashboards/dds/Response Time.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -161,7 +161,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -183,7 +183,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -219,7 +219,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -328,7 +328,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -351,7 +351,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -386,7 +386,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "", "fieldConfig": { @@ -465,7 +465,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -491,7 +491,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -581,7 +581,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -622,9 +622,9 @@ }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -632,6 +632,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/SPACED.json b/grafana/rmf-app/src/dashboards/dds/SPACED.json index 2132c296..a4554cc5 100644 --- a/grafana/rmf-app/src/dashboards/dds/SPACED.json +++ b/grafana/rmf-app/src/dashboards/dds/SPACED.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Disk space", "fieldConfig": { @@ -95,7 +95,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "346e1b6d-c49a-455f-81af-b18f52fea63a", @@ -296,15 +296,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "description": "Sysplex", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -312,6 +312,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/SPACEG.json b/grafana/rmf-app/src/dashboards/dds/SPACEG.json index 16afe690..367807eb 100644 --- a/grafana/rmf-app/src/dashboards/dds/SPACEG.json +++ b/grafana/rmf-app/src/dashboards/dds/SPACEG.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Storage space", "fieldConfig": { @@ -95,7 +95,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "3414ef3c-2a88-49dc-a6a3-362d2b69c5b1", @@ -296,15 +296,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "description": "Sysplex", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -312,6 +312,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/STOR.json b/grafana/rmf-app/src/dashboards/dds/STOR.json index d2f49ad3..09c295f4 100644 --- a/grafana/rmf-app/src/dashboards/dds/STOR.json +++ b/grafana/rmf-app/src/dashboards/dds/STOR.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Storage Delays", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "f171daf4-2cd7-4209-a752-3a901b8ff6c3", @@ -114,7 +114,7 @@ "% Delay HIPR": true, "% Delay VIO": true, "% Delay XMEM": true, - "ASID (dec)": true, + "ASID (dec)": false, "Active Frames": true, "Channel Measurement Group": true, "FICON Deferred Operation Rate": true, @@ -170,14 +170,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -189,15 +189,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/STORC.json b/grafana/rmf-app/src/dashboards/dds/STORC.json index 58ca486b..fdf62eca 100644 --- a/grafana/rmf-app/src/dashboards/dds/STORC.json +++ b/grafana/rmf-app/src/dashboards/dds/STORC.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Common Storage", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "b28c67d8-2f71-4e81-a797-b8b8ca413910", @@ -206,14 +206,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -225,15 +225,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/STORCR.json b/grafana/rmf-app/src/dashboards/dds/STORCR.json index a1524647..bd6a8a7a 100644 --- a/grafana/rmf-app/src/dashboards/dds/STORCR.json +++ b/grafana/rmf-app/src/dashboards/dds/STORCR.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Common Storage Remaining", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "d6900151-5042-4f06-aaa7-cc8088cdbe4e", @@ -144,14 +144,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -163,15 +163,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/STORF.json b/grafana/rmf-app/src/dashboards/dds/STORF.json index e58f6335..eb9d3547 100644 --- a/grafana/rmf-app/src/dashboards/dds/STORF.json +++ b/grafana/rmf-app/src/dashboards/dds/STORF.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Storage Frames Overview", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "a3b4e537-0ff9-4b37-b673-d2d27d82d1e6", @@ -113,7 +113,7 @@ "excludeByName": { "1 MB Frames Fixed": true, "2 GB Frames Fixed": true, - "ASID (dec)": true, + "ASID (dec)": false, "Channel Measurement Group": true, "FICON Deferred Operation Rate": true, "Freemained Frames": true, @@ -153,14 +153,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -172,15 +172,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/STORM.json b/grafana/rmf-app/src/dashboards/dds/STORM.json index 9df35ecd..7133361e 100644 --- a/grafana/rmf-app/src/dashboards/dds/STORM.json +++ b/grafana/rmf-app/src/dashboards/dds/STORM.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Storage Memory Objects", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "35036b16-3f54-4417-9905-c5644da37dd5", @@ -231,14 +231,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -250,15 +250,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/STORR.json b/grafana/rmf-app/src/dashboards/dds/STORR.json index b34633e1..7e69621a 100644 --- a/grafana/rmf-app/src/dashboards/dds/STORR.json +++ b/grafana/rmf-app/src/dashboards/dds/STORR.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Storage Resource Delays", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "7eb3af2b-4fd9-4751-982a-05a7faa388b1", @@ -224,14 +224,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -243,15 +243,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/STORS.json b/grafana/rmf-app/src/dashboards/dds/STORS.json index 07f1dac1..1b7338aa 100644 --- a/grafana/rmf-app/src/dashboards/dds/STORS.json +++ b/grafana/rmf-app/src/dashboards/dds/STORS.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Storage by WLM class", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "4289baf1-221c-4be3-b469-ad2ec1c31848", @@ -197,14 +197,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -216,15 +216,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/SYSINFO.json b/grafana/rmf-app/src/dashboards/dds/SYSINFO.json index 7c75a93c..137c01d2 100644 --- a/grafana/rmf-app/src/dashboards/dds/SYSINFO.json +++ b/grafana/rmf-app/src/dashboards/dds/SYSINFO.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "System Info by WLM class", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "6a55cb0b-c2bc-4586-b79d-53c103b29550", @@ -317,14 +317,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -336,15 +336,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/SYSRG.json b/grafana/rmf-app/src/dashboards/dds/SYSRG.json index 6939ab50..c804d39d 100644 --- a/grafana/rmf-app/src/dashboards/dds/SYSRG.json +++ b/grafana/rmf-app/src/dashboards/dds/SYSRG.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Sysplex WLM Resource Group Activity", "fieldConfig": { @@ -95,7 +95,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "1ba9a8c4-b112-48ab-b8ff-d7979197efc4", @@ -268,15 +268,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "description": "Sysplex", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -284,6 +284,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/SYSSUM.json b/grafana/rmf-app/src/dashboards/dds/SYSSUM.json index a3990783..89108303 100644 --- a/grafana/rmf-app/src/dashboards/dds/SYSSUM.json +++ b/grafana/rmf-app/src/dashboards/dds/SYSSUM.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Sysplex WLM Classes Summary Report", "fieldConfig": { @@ -95,7 +95,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "48f2221c-2282-4937-85e0-b52a71e1d93e", @@ -296,15 +296,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "description": "Sysplex", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -312,6 +312,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/USAGE.json b/grafana/rmf-app/src/dashboards/dds/USAGE.json index 9e7f642b..fe72b5d9 100644 --- a/grafana/rmf-app/src/dashboards/dds/USAGE.json +++ b/grafana/rmf-app/src/dashboards/dds/USAGE.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "Job Oriented Usage", "fieldConfig": { @@ -93,7 +93,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "aa2f5d29-d19b-4e8f-b782-32468729ab3f", @@ -111,7 +111,7 @@ "id": "organize", "options": { "excludeByName": { - "ASID (dec)": true, + "ASID (dec)": false, "Channel Measurement Group": true, "Dispatching Priority": true, "FICON Deferred Operation Rate": true, @@ -191,14 +191,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -210,15 +210,35 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" }, - "definition": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "definition": "systems", "hide": 0, "includeAll": false, "multi": false, "name": "LPAR", "options": [], - "query": "select label from resource where name=\"${sysplex}\" and type=\"SYSPLEX\" and filter=\"MVS_IMAGE\"", + "query": "systems", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/grafana/rmf-app/src/dashboards/dds/Using & Delays (Timeline).json b/grafana/rmf-app/src/dashboards/dds/Using & Delays (Timeline).json index e3ee97bf..98b34c1d 100644 --- a/grafana/rmf-app/src/dashboards/dds/Using & Delays (Timeline).json +++ b/grafana/rmf-app/src/dashboards/dds/Using & Delays (Timeline).json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -129,7 +129,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -151,7 +151,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -174,7 +174,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -201,7 +201,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -278,7 +278,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -300,7 +300,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -323,7 +323,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -346,7 +346,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -369,7 +369,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -392,7 +392,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -415,7 +415,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -449,14 +449,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -464,6 +464,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/Using & Delays.json b/grafana/rmf-app/src/dashboards/dds/Using & Delays.json index db93eee4..3f02cc46 100644 --- a/grafana/rmf-app/src/dashboards/dds/Using & Delays.json +++ b/grafana/rmf-app/src/dashboards/dds/Using & Delays.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -175,7 +175,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -197,7 +197,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -220,7 +220,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -248,7 +248,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -431,7 +431,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "loadDataSource": "METRICS", "refId": "A", @@ -453,7 +453,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -476,7 +476,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -499,7 +499,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -522,7 +522,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -545,7 +545,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -568,7 +568,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "loadDataSource": "METRICS", @@ -610,9 +610,9 @@ }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -620,6 +620,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/XCF Activity (Timeline).json b/grafana/rmf-app/src/dashboards/dds/XCF Activity (Timeline).json index 6ee46fdd..18cbd4fe 100644 --- a/grafana/rmf-app/src/dashboards/dds/XCF Activity (Timeline).json +++ b/grafana/rmf-app/src/dashboards/dds/XCF Activity (Timeline).json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -130,7 +130,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "3bdf9ae8-f62b-40ec-b854-6ed5b66656a0", @@ -144,7 +144,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "refId": "B", @@ -163,7 +163,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -241,7 +241,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "e074ed81-e389-4db3-bee6-ce27191643a2", @@ -255,7 +255,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "refId": "B", @@ -274,7 +274,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -352,7 +352,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "ab9c1f60-2901-4a38-9500-b775cd4df2b5", @@ -370,7 +370,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -448,7 +448,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "03d3c3a6-1ba1-4c49-969b-2b904b785419", @@ -473,14 +473,14 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -488,6 +488,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/XCF Activity.json b/grafana/rmf-app/src/dashboards/dds/XCF Activity.json index 2b6ae1c2..1890a629 100644 --- a/grafana/rmf-app/src/dashboards/dds/XCF Activity.json +++ b/grafana/rmf-app/src/dashboards/dds/XCF Activity.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -160,7 +160,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "834a08f0-4082-498b-86fe-976e27223b27", @@ -174,7 +174,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "refId": "B", @@ -202,7 +202,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -310,7 +310,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "e75b194d-7adf-4104-beac-ca1a998154f8", @@ -324,7 +324,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "hide": false, "refId": "B", @@ -352,7 +352,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -445,7 +445,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "fc948aa9-f052-4eab-ada8-e61c33ccc362", @@ -463,7 +463,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "fieldConfig": { "defaults": { @@ -556,7 +556,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "31e6a5ca-3144-4422-9d08-25e3b319a833", @@ -589,9 +589,9 @@ }, "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -599,6 +599,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/XCFGROUP.json b/grafana/rmf-app/src/dashboards/dds/XCFGROUP.json index 18180edf..a8e9bab6 100644 --- a/grafana/rmf-app/src/dashboards/dds/XCFGROUP.json +++ b/grafana/rmf-app/src/dashboards/dds/XCFGROUP.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "XCF Group Statistics", "fieldConfig": { @@ -95,7 +95,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "5e57a653-10c8-461d-8991-ada953c73ba8", @@ -300,15 +300,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "description": "Sysplex", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -316,6 +316,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/XCFOVW.json b/grafana/rmf-app/src/dashboards/dds/XCFOVW.json index 56d67182..ccdd9e8f 100644 --- a/grafana/rmf-app/src/dashboards/dds/XCFOVW.json +++ b/grafana/rmf-app/src/dashboards/dds/XCFOVW.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "XCF Systems Overview", "fieldConfig": { @@ -95,7 +95,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "aa73ed04-967c-469d-a5f8-9eb0d1c8b092", @@ -300,15 +300,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "description": "Sysplex", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -316,6 +316,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/XCFPATH.json b/grafana/rmf-app/src/dashboards/dds/XCFPATH.json index 98737444..2eef210a 100644 --- a/grafana/rmf-app/src/dashboards/dds/XCFPATH.json +++ b/grafana/rmf-app/src/dashboards/dds/XCFPATH.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "XCF Path Statistics", "fieldConfig": { @@ -122,7 +122,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "3282dc77-1ad7-4380-9a9a-0f846ea8af6a", @@ -306,15 +306,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "description": "Sysplex", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -322,6 +322,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/XCFSYS.json b/grafana/rmf-app/src/dashboards/dds/XCFSYS.json index c2bff750..c2cd81f1 100644 --- a/grafana/rmf-app/src/dashboards/dds/XCFSYS.json +++ b/grafana/rmf-app/src/dashboards/dds/XCFSYS.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "XCF System Statistics", "fieldConfig": { @@ -126,7 +126,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "056aa738-d1cf-46a4-aee4-2f7176b48b13", @@ -295,15 +295,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "description": "Sysplex", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -311,6 +311,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/ZFSFS.json b/grafana/rmf-app/src/dashboards/dds/ZFSFS.json index 1408bcf3..a7dedfaa 100644 --- a/grafana/rmf-app/src/dashboards/dds/ZFSFS.json +++ b/grafana/rmf-app/src/dashboards/dds/ZFSFS.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "zFS File System", "fieldConfig": { @@ -95,7 +95,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "d4867b70-6f07-4a87-8390-5d947a775d05", @@ -316,15 +316,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "description": "Sysplex", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -332,6 +332,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/ZFSKN.json b/grafana/rmf-app/src/dashboards/dds/ZFSKN.json index 507400e3..9c6b8ff9 100644 --- a/grafana/rmf-app/src/dashboards/dds/ZFSKN.json +++ b/grafana/rmf-app/src/dashboards/dds/ZFSKN.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "(zFS Kernel", "fieldConfig": { @@ -95,7 +95,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "31e86a06-d0fb-46e5-970a-d86e4c098749", @@ -296,15 +296,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "description": "Sysplex", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -312,6 +312,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/dashboards/dds/ZFSOVW.json b/grafana/rmf-app/src/dashboards/dds/ZFSOVW.json index c306f6ff..30fe1e5f 100644 --- a/grafana/rmf-app/src/dashboards/dds/ZFSOVW.json +++ b/grafana/rmf-app/src/dashboards/dds/ZFSOVW.json @@ -52,7 +52,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "description": "zFS Overview", "fieldConfig": { @@ -95,7 +95,7 @@ { "datasource": { "type": "ibm-rmf-datasource", - "uid": "${sysplex}" + "uid": "${datasource}" }, "refId": "A", "rmfPanelGuid": "56006a7e-0517-4de8-80c8-29db0310d5a6", @@ -346,15 +346,15 @@ { "current": { "selected": false, - "text": "${sysplex}", - "value": "${sysplex}" + "text": "${datasource}", + "value": "${datasource}" }, "description": "Sysplex", "hide": 0, "includeAll": false, - "label": "Sysplex", + "label": "Data source", "multi": false, - "name": "sysplex", + "name": "datasource", "options": [], "query": "ibm-rmf-datasource", "queryValue": "", @@ -362,6 +362,26 @@ "regex": "", "skipUrlSync": false, "type": "datasource" + }, + { + "datasource": { + "type": "ibm-rmf-datasource", + "uid": "${datasource}" + }, + "definition": "sysplex", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "sysplex", + "label": "Sysplex", + "options": [], + "query": "sysplex", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query", + "allowCustomValue": false } ] }, diff --git a/grafana/rmf-app/src/datasources/rmf-datasource/common/common.helper.ts b/grafana/rmf-app/src/datasources/rmf-datasource/common/common.helper.ts index 2e2d29af..d6349d97 100644 --- a/grafana/rmf-app/src/datasources/rmf-datasource/common/common.helper.ts +++ b/grafana/rmf-app/src/datasources/rmf-datasource/common/common.helper.ts @@ -149,6 +149,15 @@ export const queryValidation = (query: string, resourceBaseData: any): QueryVali columnName: '', errorMessage: '', }; + //TODO remove when deprecated + if ("sysplex" == query.toLowerCase() || + "systems" == query.toLowerCase() || + "omegamonds" == query.toLowerCase()) { + queryResult.result = true; + queryResult.resourceCommand = query; + queryResult.columnName = "RESLABEL"; + return queryResult; + } let result = true; if (query === '' || query.length < 20) { result = false; diff --git a/grafana/rmf-app/src/datasources/rmf-datasource/common/configSettings.ts b/grafana/rmf-app/src/datasources/rmf-datasource/common/configSettings.ts index 432d9c08..aed3bd9f 100644 --- a/grafana/rmf-app/src/datasources/rmf-datasource/common/configSettings.ts +++ b/grafana/rmf-app/src/datasources/rmf-datasource/common/configSettings.ts @@ -27,3 +27,5 @@ export class ConfigSettings { IMAGE_URL: `/gpm/include/`, }; } + +export const OMEGAMON_DS_TYPE_NAME = "omegamon-datasource"; \ No newline at end of file diff --git a/grafana/rmf-app/src/datasources/rmf-datasource/common/types.ts b/grafana/rmf-app/src/datasources/rmf-datasource/common/types.ts index 3445c3af..703c6371 100644 --- a/grafana/rmf-app/src/datasources/rmf-datasource/common/types.ts +++ b/grafana/rmf-app/src/datasources/rmf-datasource/common/types.ts @@ -126,6 +126,7 @@ export interface RMFDataSourceJsonData extends DataSourceJsonData { userName?: string; // NB: the meaning of that is inverted. If set, we do verify certificates. skipVerify?: boolean; + omegamonDs?: string; } /** diff --git a/grafana/rmf-app/src/datasources/rmf-datasource/config-editor/config-editor.component.tsx b/grafana/rmf-app/src/datasources/rmf-datasource/config-editor/config-editor.component.tsx index 03b21d56..4c8809e6 100644 --- a/grafana/rmf-app/src/datasources/rmf-datasource/config-editor/config-editor.component.tsx +++ b/grafana/rmf-app/src/datasources/rmf-datasource/config-editor/config-editor.component.tsx @@ -14,10 +14,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import React, { PureComponent } from 'react'; +import React, { PureComponent, ReactNode } from 'react'; import { DataSourcePluginOptionsEditorProps } from '@grafana/data'; -import { FieldValidationMessage, InlineField, InlineSwitch, LegacyForms, SecretInput } from '@grafana/ui'; +import { FieldValidationMessage, InlineField, InlineSwitch, LegacyForms, SecretInput, Combobox, ComboboxOption } from '@grafana/ui'; import { RMFDataSourceSettings, RMFDataSourceJsonData, RMFDataSourceSecureJsonData } from '../common/types'; +import { OMEGAMON_DS_TYPE_NAME } from '../common/configSettings'; +import { getBackendSrv } from '@grafana/runtime'; require('./config-editor.component.css'); @@ -27,6 +29,7 @@ const FIELD_INPUT_WIDTH = 20; const INLINE_LABEL_WIDTH = 20; const PASSWORD_SET_WIDTH = 30; const PASSWORD_EDIT_WIDTH = 40; +const DATASOURCE_COMBO_WIDTH = 40; const DEFAULT_HTTP_TIMEOUT = '60'; const DEFAULT_CACHE_SIZE = '1024'; const MINIMAL_CACHE_SIZE = 128; @@ -38,6 +41,7 @@ interface State { httpTimeoutError?: string; basicAuthUserError?: string; cacheSizeError?: string; + omegOptionsArray?: Array; } // TODO: somehow prometheus can validate fields from "run and test" in v11 export default class ConfigEditor extends PureComponent { @@ -68,6 +72,7 @@ export default class ConfigEditor extends PureComponent { cacheSize: jsonData?.cacheSize || DEFAULT_CACHE_SIZE, tlsSkipVerify: jsonData?.tlsSkipVerify || false, disableCompression: jsonData?.disableCompression ?? false, + omegamonDs: jsonData?.omegamonDs ?? "", }; } onOptionsChange({ ...options }); @@ -136,6 +141,23 @@ export default class ConfigEditor extends PureComponent { }); }; + loadDatasourceList = async (inputValue: string) => { + var items: Set = new Set(); + var optionsArray: Array> = new Array; + if (this.props.options.jsonData?.omegamonDs) { + items.add(this.props.options.jsonData?.omegamonDs); + optionsArray.push({value: this.props.options.jsonData?.omegamonDs} as ComboboxOption); + } + var datasources: any = await getBackendSrv().get("/api/datasources") + datasources.forEach((ds: any) => { + if (ds.type === OMEGAMON_DS_TYPE_NAME && !items.has(ds.name)) { + items.add(ds.name); + optionsArray.push({value: ds.name} as ComboboxOption); + } + }); + return optionsArray; + }; + render() { const { options } = this.props; const { urlError, httpTimeoutError, basicAuthUserError, cacheSizeError } = this.state; @@ -289,6 +311,24 @@ export default class ConfigEditor extends PureComponent { {cacheSizeError && {cacheSizeError}} + +

OMEGAMON (Experimental)

+
+
+ + { + this.updateSettings({ jsonData: { omegamonDs: String(event.value) } }); + }} + /> + +
+
); } diff --git a/grafana/rmf-app/src/panels/report/table-component/table.component.tsx b/grafana/rmf-app/src/panels/report/table-component/table.component.tsx index 32c3e412..8d91426a 100644 --- a/grafana/rmf-app/src/panels/report/table-component/table.component.tsx +++ b/grafana/rmf-app/src/panels/report/table-component/table.component.tsx @@ -20,7 +20,6 @@ import { BannerComponent } from '../banner-component/banner.component'; import { CaptionsComponent } from '../captions-component/captions.component'; import { InitFrameData, - applyFieldOverridesForBarGauge, applySelectedDefaultsAndOverrides, getPaginationFlagFromFieldConfig, } from './table.helper'; @@ -35,7 +34,6 @@ export const TableComponent: React.FC = ({ options, fieldConfig, data, wi const reportData = applySelectedDefaultsAndOverrides(options, fieldConfig, frameData); const tableData = reportData.tableData const captionData = reportData.captionFields - const finalTableData = applyFieldOverridesForBarGauge(reportData.tableData); const enablePagination: boolean = getPaginationFlagFromFieldConfig(fieldConfig); // Setting the scroll properties @@ -64,10 +62,10 @@ export const TableComponent: React.FC = ({ options, fieldConfig, data, wi '' )}
- {( tableData && tableData.length > 0 && tableData[0].fields && tableData[0].fields.length > 0) ? ( + {( tableData && tableData.length > 0 && tableData.fields && tableData.fields.length > 0) ? ( { let frameData: DataFrame[] = [ @@ -79,7 +81,7 @@ export const applySelectedDefaultsAndOverrides = ( let sliceEnd: number | undefined; for (let i = 0; i < result[0].fields.length; i++) { - let field: V9CompatField = result[0].fields[i]; + let field = result[0].fields[i]; if (field.name.startsWith(BANNER_PREFIX)) { targetArray = bannerFields; sliceStart = 0; @@ -93,17 +95,32 @@ export const applySelectedDefaultsAndOverrides = ( sliceStart = 1; sliceEnd = undefined; } - let values = field.values?.buffer ?? field.values; - values = values.slice(sliceStart, sliceEnd); - if (field.values?.buffer !== undefined) { - field.values.buffer = values; - } else { - field.values = values; + field.values = field.values.slice(sliceStart, sliceEnd); + + let newField : Field = {...field}; + if (field.getLinks) { + newField.getLinks = (config: ValueLinkConfig): Array> => { + if (config.valueRowIndex) { + config.valueRowIndex += 1; + } else { + config.valueRowIndex = 1; + } + if (field.getLinks) { + return field.getLinks(config); + } + return {} as Array>; + }; + } + for (let k = 0; k < newField.values.length; k++) { + if (newField.values[k] === null) { + newField.values[k] = ""; + } } - targetArray.push(field); + targetArray.push(newField); } - result[0].fields = tableFields; - result[0].length -= 1; + let dataFrame : DataFrame = {} as DataFrame; + dataFrame.fields = tableFields; + dataFrame.length = result[0].length - 1; // First apply default settings result[0].fields.map((field: Field) => { @@ -177,7 +194,7 @@ export const applySelectedDefaultsAndOverrides = ( } }); } - return { bannerFields: bannerFields, captionFields: captionFields, tableData: result }; + return { bannerFields: bannerFields, captionFields: captionFields, tableData: dataFrame }; }; export const applyFieldOverridesForBarGauge = (finalData: DataFrame[]): DataFrame[] => { diff --git a/grafana/rmf-app/src/panels/report/types.ts b/grafana/rmf-app/src/panels/report/types.ts index 84cd1084..7b6752cf 100644 --- a/grafana/rmf-app/src/panels/report/types.ts +++ b/grafana/rmf-app/src/panels/report/types.ts @@ -20,7 +20,7 @@ import { TableCellDisplayMode } from '@grafana/ui'; export interface ReportData { bannerFields: Field[]; captionFields: Field[]; - tableData: DataFrame[]; + tableData: DataFrame; } export interface FieldProps { @@ -54,12 +54,3 @@ export interface TableBanner { timeRange?: string; range?: string; } - -// Interfaces for Grafana v9 compatibility -interface ArrayWithBuffer extends Array { - buffer?: T[]; -} - -export interface V9CompatField extends Field { - values: ArrayWithBuffer; -}