Ad Widget

Collapse

Вопрос по шаблону zabbix_hyperv_replication

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • mzfaker
    Member
    • Nov 2015
    • 34

    #1

    Вопрос по шаблону zabbix_hyperv_replication

    Здравствуйте! Скачал шаблон отсюда https://github.com/JeferCatarina/zab...rv_replication
    но он у меня не работает. что конкретно, на некоторых серверах ошибка
    Value "Get-Date : ?? 㤠???? ?ਢ易?? ??ࠬ??? "Date". ?? 㤠???? ?८?ࠧ????? ????
    ??? "" ? ⨯ "System.DateTime". ?訡??: "??ப? ?? ?ᯮ????? ??? ????⢨⥫쭮
    ? ???祭?? DateTime."
    C:\script\Replica.ps1:21 ????:32
    + $LASTSYNC = Get-Date -Date "$LASTSYNC" -Format "yyyy/MM/dd HH:mm: ...
    + ~~~~~~~~~~~
    + CategoryInfo : InvalidArgument: ( [Get-Date], ParameterBindin
    gException
    + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerSh
    ell.Commands.GetDateCommand

    ?? 㤠???? ?८?ࠧ????? ??㬥?? "dateTime", ? ???祭???: "", ??? "ConvertTim
    eBySystemTimeZoneId" ? ⨯ "System.DateTime": "?? 㤠???? ?८?ࠧ????? ???祭?
    ? "" ? ⨯ "System.DateTime". ?訡??: "??ப? ?? ?ᯮ????? ??? ????⢨⥫쭮?
    ???祭?? DateTime.""
    C:\script\Replica.ps1:23 ????:5
    + $DATE2 = [System.TimeZoneInfo]::ConvertTimeBySystemTimeZoneId($LA ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~
    + CategoryInfo : NotSpecified: ( [], MethodException
    + FullyQualifiedErrorId : MethodArgumentConversionInvalidCastArgument

    New-TimeSpan : ?? 㤠???? ?ਢ易?? ??ࠬ??? "End" ? 楫????? ??ꥪ??. ?᪫?祭
    ?? ?? ??????? "End" : "?? 㤠???? ?८?ࠧ????? ???祭?? NULL ? ⨯ "System.Da
    teTime"."
    C:\script\Replica.ps1:24 ????:38
    + (New-TimeSpan -Start $DATE1 -End $DATE2).TotalSeconds
    + ~~~~~~
    + CategoryInfo : WriteError: ( [New-TimeSpan], ParameterBinding
    Exception
    + FullyQualifiedErrorId : ParameterBindingFailed,Microsoft.PowerShell.Comm
    ands.NewTimeSpanCommand" of type "string" is not suitable for value type "Numeric (float)"
    что заметил что такая ошибка выскакивает только на серверах где имя состоит из двух трех слов с пробелами.
    забикс джет по ключу выдает след

    root@il001s005:/# zabbix_get -s 10.200.1.88 -p 10050 -k "hyperv_replica[lastsync,{#SRVNAME}]"
    Get-Date : ▒▒ 㤠▒▒▒▒ ▒ਢ易▒▒ ▒▒ࠬ▒▒▒ "Date". ▒▒ 㤠▒▒▒▒ ▒८▒ࠧ▒▒▒▒▒ ▒▒▒▒
    ▒▒▒ "" ▒ ⨯ "System.DateTime". ▒訡▒▒: "▒▒ப▒ ▒▒ ▒ᯮ▒▒▒▒▒ ▒▒▒ ▒▒▒▒⢨⥫쭮
    ▒ ▒▒▒祭▒▒ DateTime."
    C:\script\Replica.ps1:21 ▒▒▒▒:32
    + $LASTSYNC = Get-Date -Date "$LASTSYNC" -Format "yyyy/MM/dd HH:mm: ...
    + ~~~~~~~~~~~
    + CategoryInfo : InvalidArgument: ( [Get-Date], ParameterBindin
    gException
    + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerSh
    ell.Commands.GetDateCommand

    ▒▒ 㤠▒▒▒▒ ▒८▒ࠧ▒▒▒▒▒ ▒▒㬥▒▒ "dateTime", ▒ ▒▒▒祭▒▒▒: "", ▒▒▒ "ConvertTim
    eBySystemTimeZoneId" ▒ ⨯ "System.DateTime": "▒▒ 㤠▒▒▒▒ ▒८▒ࠧ▒▒▒▒▒ ▒▒▒祭▒
    ▒ "" ▒ ⨯ "System.DateTime". ▒訡▒▒: "▒▒ப▒ ▒▒ ▒ᯮ▒▒▒▒▒ ▒▒▒ ▒▒▒▒⢨⥫쭮▒
    ▒▒▒祭▒▒ DateTime.""
    C:\script\Replica.ps1:23 ▒▒▒▒:5
    + $DATE2 = [System.TimeZoneInfo]::ConvertTimeBySystemTimeZoneId($LA ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~
    + CategoryInfo : NotSpecified: ( [], MethodException
    + FullyQualifiedErrorId : MethodArgumentConversionInvalidCastArgument

    New-TimeSpan : ▒▒ 㤠▒▒▒▒ ▒ਢ易▒▒ ▒▒ࠬ▒▒▒ "End" ▒ 楫▒▒▒▒▒ ▒▒ꥪ▒▒. ▒᪫▒祭
    ▒▒ ▒▒ ▒▒▒▒▒▒▒ "End" : "▒▒ 㤠▒▒▒▒ ▒८▒ࠧ▒▒▒▒▒ ▒▒▒祭▒▒ NULL ▒ ⨯ "System.Da
    teTime"."
    C:\script\Replica.ps1:24 ▒▒▒▒:38
    + (New-TimeSpan -Start $DATE1 -End $DATE2).TotalSeconds
    + ~~~~~~
    + CategoryInfo : WriteError: ( [New-TimeSpan], ParameterBinding
    Exception
    + FullyQualifiedErrorId : ParameterBindingFailed,Microsoft.PowerShell.Comm
    ands.NewTimeSpanCommand
    т.е та же самая ошибка

    сам скрипт на сервере работает нормально

    PS C:\script> ./Replica.ps1 health "Windows SQL Server 2012 R2"
    0
    мне кажется где то не хватает кавычек, такая ошибка выскакивает и на самом сервере если не верно написать имя сервера не обернув кавычками если название с пробелами.
  • sadman
    Senior Member
    • Dec 2010
    • 1611

    #2

    Думаю, что
    Code:
    UserParameter=hyperv_replica[*],powershell -NoProfile -ExecutionPolicy Bypass -File "C:\Zabbix\Scripts\hyperv_replica.ps1" [B]$1 $2[/B]
    Следует подправить:
    Code:
    UserParameter=hyperv_replica[*],powershell -NoProfile -ExecutionPolicy Bypass -File "C:\Zabbix\Scripts\hyperv_replica.ps1" [B]"$1" "$2"[/B]

    Comment

    • mzfaker
      Member
      • Nov 2015
      • 34

      #3
      Originally posted by sadman
      Думаю, что
      Code:
      UserParameter=hyperv_replica[*],powershell -NoProfile -ExecutionPolicy Bypass -File "C:\Zabbix\Scripts\hyperv_replica.ps1" [B]$1 $2[/B]
      Следует подправить:
      Code:
      UserParameter=hyperv_replica[*],powershell -NoProfile -ExecutionPolicy Bypass -File "C:\Zabbix\Scripts\hyperv_replica.ps1" [B]"$1" "$2"[/B]
      Блин, куда только не вставлял эти ковычки )) Спасибо! Помогло!

      Comment

      Working...