Спасибо, так и сделал, немного доработав запрос, т.к. тут учитывается только статус агента, а мне нужен статус системы (если агент доступен).
Для графаны получилось так:
DECLARE
@IsAvail INT
DECLARE
@HState INT
DECLARE
@PCState INT
SET
@IsAvail = (SELECT IsAvailable FROM ManagedEntityGenericView as MEG
INNER JOIN ManagedTypeView as MTV
ON MEG.MonitoringClassId = MTV.Id
WHERE (MEG.DisplayName in($hostname) AND
MTV.Name = 'microsoft.systemCenter.agent') AND IsDeleted=0)
SET
@HState = (SELECT
s.HealthState
FROM State s
JOIN BaseManagedEntity bme ON s.BaseManagedEntityId = bme.BaseManagedEntityId
JOIN MonitorView mv ON mv.Id = s.MonitorId
WHERE
bme.DisplayName in($hostname) and
mv.Name = 'System.Health.EntityState' AND
FullName like 'Microsoft.Windows.Computer:%'
)
IF
@IsAvail=0
SET
@PCState = 0
ELSE
SET
@PCState =
@HStateSELECT
@PCState as [Состояние]