Ad Widget

Collapse

wmi.getall

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Alex81
    Junior Member
    • Jan 2020
    • 20

    #1

    wmi.getall

    Добрый день!
    Есть желание сделать выборку пользователей из группы локальных администраторов на пк с помощью wmi.getall

    На powershell запрос выглядит вот так: Get-WmiObject -Query "select * from Win32_GroupUser where GroupComponent=`"Win32_Group.Domain='имя_пк',Name= 'Администраторы'`""

    WQL запрос (проверен на wbemtest): SELECT * FROM WIN32_GroupUser WHERE GroupComponent='Win32_Group.Domain="имя_пк",Name=" Администраторы"'

    Пытался сделать этот запрос через wmi.getall
    wmi.getall[root\cimv2,SELECT * FROM WIN32_GroupUser WHERE GroupComponent='Win32_Group.Domain="имя_пк",Name=" Администраторы"']
    Получаю ошибку "Invalid number of parameters".

    Простые запросы (тот же wmi.getall[root\cimv2,SELECT * FROM WIN32_GroupUser]) отрабатывают как положено, думаю, что дело не в настройках, версия агента на пк 4.4.0, версия сервера 4.4.4.

    Вероятнее всего проблема в экранировании кавычек, однако как ни пытался не смог составить работающий запрос. Возможно кто-то подскажет как сделать правильно?
    Last edited by Alex81; 31-01-2020, 13:58.
  • Kos
    Senior Member
    Zabbix Certified SpecialistZabbix Certified Professional
    • Aug 2015
    • 3404

    #2
    Originally posted by Alex81
    Вероятнее всего проблема в экранировании кавычек, однако как ни пытался не смог составить работающий запрос. Возможно кто-то подскажет как сделать правильно?
    Именно так. Весь передаваемый параметр берётся в двойные кавычки, каждый символ "двойная кавычка" внутри экранируется обратным слэшем:
    Code:
    wmi.getall[root\cimv2,"SELECT * FROM WIN32_GroupUser WHERE GroupComponent='Win32_Group.Domain=\"имя_пк\",Name=\"Администраторы\"'"]
    Last edited by Kos; 31-01-2020, 13:28.

    Comment

    • Alex81
      Junior Member
      • Jan 2020
      • 20

      #3
      Originally posted by Kos
      Именно так. Весь передаваемый параметр берётся в двойные кавычки, каждый символ "двойная кавычка" внутри экранируется обратным слэшем:
      Code:
      wmi.getall[root\cimv2,"SELECT * FROM WIN32_GroupUser WHERE GroupComponent='Win32_Group.Domain=\"имя_пк\",Name=\"Администраторы\"'"]
      Огромное спасибо! Таким образом запрос проходит.
      Более узкий запрос: wmi.getall[root\cimv2,"SELECT PartComponent FROM WIN32_GroupUser WHERE GroupComponent='Win32_Group.Domain="имя_пк",Name=" Администраторы"'"]
      Last edited by Alex81; 31-01-2020, 13:57.

      Comment


      • Kos
        Kos commented
        Editing a comment
        Поправил (убрал пробел, скопированный из исходного сообщения)
    • dialod
      Junior Member
      • Apr 2020
      • 18

      #4
      Привет ! Тоже решил добавить отображение локальных администраторов. Не добавляется элемент, пишет ошибку:
      Ошибочный ключ "wmi.getall[root\cimv2,"SELECT PartComponent FROM WIN32_GroupUser WHERE GroupComponent='Win32_Group.Domain="имя_пк",Name=" Администраторы"'"]" для элемента данных "Local Administrators" у "comp_1": некорректный синтаксис около "имя_пк",Name="Администраторы"'"]" Что не так ? Версия Zabbix и агента 4.4.6
      Last edited by dialod; 22-04-2020, 13:03.

      Comment

      • Kos
        Senior Member
        Zabbix Certified SpecialistZabbix Certified Professional
        • Aug 2015
        • 3404

        #5
        Originally posted by dialod
        Привет ! Тоже решил добавить отображение локальных администраторов. Не добавляется элемент, пишет ошибку:
        Ошибочный ключ "wmi.getall[root\cimv2,"SELECT PartComponent FROM WIN32_GroupUser WHERE GroupComponent='Win32_Group.Domain="имя_пк",Name=" Администраторы"'"]" для элемента данных "Local Administrators" у "comp_1": некорректный синтаксис около "имя_пк",Name="Администраторы"'"]" Что не так ? Версия Zabbix и агента 4.4.6
        Умеющий читать да прочитает первый же ответ в этой недолгой теме:
        Весь передаваемый параметр берётся в двойные кавычки, каждый символ "двойная кавычка" внутри экранируется обратным слэшем

        Comment

        • dialod
          Junior Member
          • Apr 2020
          • 18

          #6
          Спасибо за быстрый ответ. Я пробовал оба варианта:

          1. Тут ключ который Вы писали пользователю Alex81

          2. wmi.getall[root\cimv2,"SELECT PartComponent FROM WIN32_GroupUser WHERE GroupComponent='Win32_Group.Domain="имя_пк",Name=" Администраторы"'"] Здесь так же как и в первом варианте обратный слеш.

          В первом варианте ключ добавляется без ошибок, но данные не получает - Empty WMI search result. Про второй я выше написал. В обоих вариантах Тип: Zabbix Agent(активный) Тип информации: Текст
          Напишите пожалуйста как должно быть. Ткните носом, так сказать.
          Attached Files
          Last edited by dialod; 22-04-2020, 16:11.

          Comment


          • dialod
            dialod commented
            Editing a comment
            Почему то не редактируется мое сообщение и убираются знаки "обратный слеш".
            Last edited by dialod; 22-04-2020, 14:30.
        • Alex81
          Junior Member
          • Jan 2020
          • 20

          #7
          Добрый день!
          Вот рабочий запрос из шаблона:
          wmi.getall[root\cimv2,"SELECT PartComponent FROM WIN32_GroupUser WHERE GroupComponent='Win32_Group.Domain="{$ARMNAME}",Na me="Администраторы"'"]
          Макрос $ARMNAME необходимо добавить для каждого узла, имя должно быть в формате PCNAME.

          Comment

          • Alex81
            Junior Member
            • Jan 2020
            • 20

            #8
            Странно, при копировании запроса на сайт появился лишний пробел в слове Name, а отредактировать сообщение не могу. И обратные слэши тоже пропали.

            Comment

            • dialod
              Junior Member
              • Apr 2020
              • 18

              #9
              Originally posted by Alex81
              Добрый день!
              Вот рабочий запрос из шаблона:
              wmi.getall[root\cimv2,"SELECT PartComponent FROM WIN32_GroupUser WHERE GroupComponent='Win32_Group.Domain="{$ARMNAME}",Na me="Администраторы"'"]
              Макрос $ARMNAME необходимо добавить для каждого узла, имя должно быть в формате PCNAME.
              Спасибо за ответ ! Но пишет ошибочный ключ. Что за дела не пойму. Почему у одного работает, у другого нет.
              Attached Files

              Comment


              • Alex81
                Alex81 commented
                Editing a comment
                Тип информации должен быть "текст", а тип "zabbix агент", не активный (хотя насчет активный-неактивный точно не вспомню)
            • Alex81
              Junior Member
              • Jan 2020
              • 20

              #10
              Click image for larger version

Name:	запрос.JPG
Views:	1140
Size:	13.7 KB
ID:	399859
              Раз строка искажается попробую прицепить скриншот, может быть так будет понятнее.

              Comment

              • dialod
                Junior Member
                • Apr 2020
                • 18

                #11
                Originally posted by Alex81
                Click image for larger version  Name:	запрос.JPG Views:	0 Size:	13.7 KB ID:	399859
                Раз строка искажается попробую прицепить скриншот, может быть так будет понятнее.
                Забыл про обратные слэши. Добавил их и теперь Empty WMI search result. Сейчас скриншот пришлю.
                Attached Files

                Comment

                • Alex81
                  Junior Member
                  • Jan 2020
                  • 20

                  #12
                  Прицепил шаблон.
                  Attached Files

                  Comment

                  • dialod
                    Junior Member
                    • Apr 2020
                    • 18

                    #13
                    Originally posted by Alex81
                    Прицепил шаблон.
                    Спасибо ! Заработало без шаблона. Не понимаю что было. Видать я замучал Zabbix.
                    Attached Files

                    Comment

                    • Alex81
                      Junior Member
                      • Jan 2020
                      • 20

                      #14
                      Originally posted by dialod

                      Спасибо ! Заработало без шаблона. Не понимаю что было. Видать я замучал Zabbix.
                      Пожалуйста!
                      В шаблоне есть предобработка, с ней вывод нормально читаемый.

                      Comment

                      • dialod
                        Junior Member
                        • Apr 2020
                        • 18

                        #15
                        Originally posted by Alex81

                        Пожалуйста!
                        В шаблоне есть предобработка, с ней вывод нормально читаемый.
                        Спасибо огромное еще раз. Где тут можно поблагодарить ?
                        Last edited by dialod; 22-04-2020, 17:31.

                        Comment

                        Working...