Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Kommentar
Azure Monitor SCOM Managed Instance har inte längre stöd och planeras vara inaktuell senast den 30 september 2026. Det här innehållet uppdateras inte längre. Vi rekommenderar Azure Monitor eller System Center Operations Manager som en alternativ lösning baserat på dina krav.
Den här artikeln beskriver hur du frågar efter övervakningsdata från en driftdatabas och skapar instrumentpaneler på Azure Managed Grafana.
Från Azure Managed Grafana som är länkad till Azure Monitor SCOM Managed Instance kan du använda SQL-frågor för att hämta övervakade data från en driftdatabas som lagras på Azure Managed SQL Managed Instance.
Förutsättningar
Innan du kör frågor mot övervakningsdata från Azure Managed Grafana-portalen kontrollerar du att SCOM Managed Instance är länkad till Azure Managed Grafana. Mer information finns i Instrumentpaneler på Azure Managed Grafana.
Det finns få färdiga instrumentpaneler tillgängliga på Azure/SCOM Managed Instance/Operational Dashboard, som kan importeras och redigeras enligt dina behov på Azure Managed Grafana-instansen.
Skapa en instrumentpanel på Azure Managed Grafana
Följ dessa steg för att skapa en instrumentpanel:
- Gå till Grafana och välj Lägg till visualisering. Du kan välja typ av visualisering baserat på tillgängliga alternativ.
              
                
- Under Panelalternativ anger du Rubrik och Beskrivning.
              
                
- Under Fråga väljer du Kod och anger frågan.
              
                
- Välj Kör fråga.
Exempelfrågor
Här följer några användbara exempelfrågor och instrumentpaneler för att komma igång med att använda Azure Managed Grafana med SCOM Managed Instance:
- Hälsotillstånd för arbetsbelastning
- Arbetsbelastningshälsa och antalet nya aviseringar på dem
- De viktigaste händelserna i arbetsbelastningen
- De viktigaste aviseringarna från arbetsbelastningen
- Prestandadatafråga för arbetsbelastningsräknare
Följande frågor hjälper dig att skapa hälsa, aviseringar och tophändelser från ett visst arbetsbelastnings-/övervakningsobjekt:
Kommentar
- <Ersätt namnprefixet> för hanteringspaketet med det faktiska hanteringspaketets namn, till exempel Microsoft.SQL % för SQL-arbetsbelastningen.
- Ersätt övervakningsobjekttypen <> med komponentklassen, till exempel %. DBEngine för SQL-serverrollen.
Hälsotillstånd för arbetsbelastning
SELECT HealthState =  
        CASE  
            WHEN MEV.HealthState = 1 THEN 'Healthy'  
            WHEN MEV.HealthState = 2 THEN 'Warning'  
            WHEN MEV.HealthState = 3 THEN 'Critical'  
            ELSE 'Uninitialized'  
        END,  
        CAST(COUNT(*)  AS DECIMAL(5, 2)) AS servers  
  FROM ${Database}.[dbo].[ManagedEntityGenericView] MEV  
  INNER JOIN ${Database}.[dbo].[ManagedTypeView] MTV ON MTV.Id = MEV.MonitoringClassId and MTV.name like '%.<Monitoring Object Type>'  
  INNER JOIN ${Database}.[dbo].[ManagementPackView] MPV ON MPV.Id = MTV.ManagementPackId and MPV.name like '<MP name Prefix>'  
  GROUP BY MEV.HealthState  
  ORDER BY MEV.HealthState  
Arbetsbelastningshälsa och antalet nya aviseringar på dem
SELECT MEV.Name  
         ,HealthState =   
      CASE   
        WHEN MEV.HealthState = 1 THEN 'Healthy'  
        WHEN MEV.HealthState = 2 THEN 'Warning'  
        WHEN MEV.HealthState = 3 THEN 'Critical'  
        ELSE 'Uninitialized'  
      END  
      ,NewAlerts = COUNT(AV.ResolutionState)  
  FROM ${Database}.[dbo].[ManagedEntityGenericView] MEV  
  INNER JOIN ${Database}.[dbo].[ManagedTypeView] MTV ON MTV.Id = MEV.MonitoringClassId and MTV.name like '%.<Monitoring Object Type>'  
  INNER JOIN ${Database}.[dbo].[ManagementPackView] MPV ON MPV.Id = MTV.ManagementPackId and MPV.name like '%<MP name prefix>%'  
  INNER JOIN ${Database}.[dbo].[AlertView] AV ON AV.MonitoringClassId = MTV.Id and AV.ResolutionState = 0 AND  $__timeFilter(TimeRaised)  
  GROUP BY MEV.Name, HealthState, AV.ResolutionState  
De viktigaste händelserna i arbetsbelastningen
SELECT EventDescription = LT5.LTValue  
      ,Count(*) Occurences  
      ,AffectedSQLServers = Count(DISTINCT(EV.LoggingComputer))  
  FROM ${Database}.[dbo].[EventView] EV  
  INNER JOIN ${Database}.[dbo].[ManagedTypeView] MTV ON MTV.Id = EV.ClassId   
  INNER JOIN ${Database}.[dbo].[ManagementPackView] MPV ON MPV.Id = MTV.ManagementPackId and MPV.name like '%<MP Name Prefix>%'  
  INNER JOIN ${Database}.dbo.LocalizedText LT5 ON EV.EventNumberStringId = LT5.LTStringId AND LT5.LanguageCode = 'ENU'  
  WHERE $__timeFilter(TimeGenerated) AND LevelId < 3  
GROUP BY Number, LT5.LTValue  
ORDER BY Occurences, AffectedSQLServers DESC;  
De viktigaste aviseringarna från arbetsbelastningen
SELECT AV.AlertStringName AS Alert  
      ,Occurrence = COUNT(AV.ResolutionState)  
      ,AffectedServers = COUNT(MEV.name)  
  FROM ${Database}.[dbo].[AlertView] AV  
  INNER JOIN ${Database}.[dbo].[ManagedTypeView] MTV ON MTV.Id = AV.MonitoringClassId and MTV.name like '%<Monitoring Object Type>'  
  INNER JOIN ${Database}.[dbo].[ManagementPackView] MPV ON MPV.Id = MTV.ManagementPackId and MPV.name like '%M<MP Name Prefix>%'  
  INNER JOIN ${Database}.[dbo].[ManagedEntityGenericView] MEV ON MTV.Id = MEV.MonitoringClassId  
  where AV.ResolutionState = 0 and  $__timeFilter(TimeRaised)  
  GROUP BY AV.AlertStringName, AV.ResolutionState 
Prestandadatafråga för arbetsbelastningsräknare
SELECT PD.TimeSampled 
   ,CASE  
		WHEN BME.Path IS NOT NULL AND BME.Path <> '' THEN CONCAT(BME.Path, '\', COALESCE(BME.Name, '')) 
		ELSE COALESCE(BME.Name, '') END AS TagetObjectPath 
  ,ObjectName = PC.ObjectName 
  ,CounterName = PC.CounterName 
  ,Value = PD.SampleValue 
  FROM dbo.PerformanceDataAllView PD  
  INNER JOIN dbo.PerformanceSource PS ON PD.PerformanceSourceInternalId = PS.PerformanceSourceInternalId 
  INNER JOIN dbo.PerformanceCounter PC ON PS.PerformanceCounterId = PC.PerformanceCounterId and CounterName = 'Receive I/Os/sec' 
  INNER JOIN dbo.BaseManagedEntity BME ON PS.BaseManagedEntityId = BME.BaseManagedEntityId AND BME.IsDeleted = 0  
  INNER JOIN [dbo].[ManagedTypeView] MTV ON MTV.Id = BME.BaseManagedTypeId  
  INNER JOIN [dbo].[ManagementPackView] MPV ON MPV.Id = MTV.ManagementPackId and MPV.name like 'Microsoft.SQL%'