Size: a a a

SCOM + SCorch + DPM

2021 June 22

ВЗ

Владимир Зеленов... in SCOM + SCorch + DPM
Пришли, пожалуйста, полный скрипт, я верну готовый.
источник

D

Dmitry in SCOM + SCorch + DPM
верни 400$
источник

ВК

Виталий Коваленко... in SCOM + SCorch + DPM
"C:\Scripts\Teams_bot_parsed_link.ps1" -AlertName "'$Data[Default='Not Present']/Context/DataItem/AlertName$'" -AlertDescription "'$Data[Default='Not Present']/Context/DataItem/AlertDescription$'" -AlertSource "'$Data[Default='Not Present']/Context/DataItem/ManagedEntityPath$'" -AlertTime "'$Data[Default='Not Present']/Context/DataItem/TimeRaisedLocal$'" -ResolutionStateName "'$Data[Default='Not Present']/Context/DataItem/ResolutionStateName$'" -WebConsoleLink '$Target/Property[Type="Notification!Microsoft.SystemCenter.AlertNotificationSubscriptionServer"]/WebConsoleUrl$/#/monitoring/drilldown/alert/$UrlEncodeData/Context/DataItem/AlertId$' -AlertID "$Data[Default='NotPresent']/Context/DataItem/AlertId$"

*****

Param (
[String]$AlertName,
[String]$AlertDescription,
[String]$AlertSource,
[String]$AlertTime,
[String]$ResolutionStateName,
)

#Замена кавычек
$AlertName = $AlertName.Replace("'",'"')
#Нормальный перенос строк
$AlertDescription = $AlertDescription.Replace("\n","`n")

# Fill in the Webhook URL here
$SCOM_Hook = 'link'

# Build the JSON object for the POST – using a “stringwich” ( @”…”@ )to keep it readable.
$content_JSON = @”
{
   "@type": "MessageCard",
   
“title”: “$AlertName”,
“text”: “Status: $ResolutionStateName”,
“themeColor”: “FF0000”,
   "sections": [{
             
       "facts": [{
           "name": "Time:",
           "value": "$AlertTime"
       }, {
           "name": "Source:",
           "value": "$AlertSource"
       }, {
           "name": "Description:",
           "value": "$AlertDescription"
       }],
       "markdown": true
   }],
   "potentialAction": [
 {
       "@type": "OpenUri",
       "name": "Open WebConsole",
       "targets": [{
           "os": "default",
           "uri": "???"
       }]
   },
 ]
}
“@
Invoke-WebRequest -Uri $SCOM_HOOK -Method POST -Body $content_JSON -ContentType application/json
источник

ВЗ

Владимир Зеленов... in SCOM + SCorch + DPM
Я не проверял сам, попробуй так
param(
   [Parameter(
       Mandatory = $true,
       Position = 0,
       ValueFromPipeline = $true)]
   [Alias("Id")]
   [guid]$AlertId,
   [Parameter(
       Mandatory = $true,
       Position = 1,
       ValueFromPipeline = $false)]
   [uri]$WebConsoleUrl,
   [Parameter(
       Mandatory = $true,
       Position = 2)]
   [uri]$TeamsUrl
)
begin
{
   Import-Module -Name OperationsManager
   New-SCOMManagementGroupConnection
}
process
{
   $Alert = Get-SCOMAlert -Id $AlertId
   if ($null -ne $Alert)
   {
       $WebConsoleLink = New-Object Uri($WebConsoleUrl, "/#/monitoring/drilldown/alert/{0:B}" -f $AlertId)
       $Body = @"
{
   "@type": "MessageCard",
   
"title": "$($Alert.Name.Replace("`'", "`""))",
"text": "Status: $($Alert.ResolutionState.ToString())",
"themeColor": "FF0000",
   "sections": [{
             
       "facts": [{
           "name": "Time:",
           "value": "$($Alert.LastModified)"
       }, {
           "name": "Source:",
           "value": "$($Alert.MonitoringObjectDisplayName)"
       }, {
           "name": "Description:",
           "value": "$($Alert.Description.Replace("\n", "`n"))"
       }],
       "markdown": true
   }],
   "potentialAction": [
 {
       "@type": "OpenUri",
       "name": "Open WebConsole",
       "targets": [{
           "os": "default",
           "uri": "$($WebConsoleLink.AbsoluteUri)"
       }]
   },
 ]
}
"@
       Invoke-WebRequest -Uri $TeamsUrl -Method POST -Body $Body -ContentType "application/json"
   }
}
end
{
   Get-SCOMManagementGroupConnection | Remove-SCOMManagementGroupConnection
}
источник

D

Dmitry in SCOM + SCorch + DPM
@Ikiru с тебя 700$
источник
2021 June 23

ВК

Виталий Коваленко... in SCOM + SCorch + DPM
я правильно понимаю что необходимо вставить значение своего урл после  [uri]$TeamsUrl = "мой урл на тимс канал" ?
источник

ВЗ

Владимир Зеленов... in SCOM + SCorch + DPM
Нужно их передавать через параметры.
источник

ВЗ

Владимир Зеленов... in SCOM + SCorch + DPM
.\ScriptName.ps1 -AlertId {guid} -WebConsoleUrl https://scom/ -TeamsUrl https://teams/
источник

ВЗ

Владимир Зеленов... in SCOM + SCorch + DPM
Работает скрипт или нет можно проверить так
Get-Alert | Select -First 5 | .\ScriptName.ps1 -WebConsoleUrl https://.../... -TeamsUrl https://.../...
источник

ВЗ

Владимир Зеленов... in SCOM + SCorch + DPM
Где точки нужно подставить своё значение.
источник

ВК

Виталий Коваленко... in SCOM + SCorch + DPM
запустил скрипт - получил сообщение в тимсе с сылко, перехожу по ней и вот
источник

ВК

Виталий Коваленко... in SCOM + SCorch + DPM
если убрать с ссылки %20 - все ок, попадаем прямо на описание алерта
источник

ВЗ

Владимир Зеленов... in SCOM + SCorch + DPM
%20 - это пробел
источник

ВЗ

Владимир Зеленов... in SCOM + SCorch + DPM
С чего он там появился?
источник

ВЗ

Владимир Зеленов... in SCOM + SCorch + DPM
В переменную $WebConsoleUrl передается пробел.
источник

ВЗ

Владимир Зеленов... in SCOM + SCorch + DPM
Убери его
источник

И

Игорь in SCOM + SCorch + DPM
кручу графану уже накидал +- запрос. но как можно быстрее одним запросом получить все данные о здоровье серверов(типа живой или не живой)
источник

ВЗ

Владимир Зеленов... in SCOM + SCorch + DPM
Живой/не живой - имеется ввиду доступен/недоступен?
источник

И

Игорь in SCOM + SCorch + DPM
да
источник

ВЗ

Владимир Зеленов... in SCOM + SCorch + DPM
Просто получить состояние монитора Health Service Heartbeat Failure
источник