Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Flatly)
  • No Skin
Collapse
Brand Logo

NetXMS Forum

  1. Home
  2. Support (Russian)
  3. Поиск закрытых алармов и причин закрытия в БД

Поиск закрытых алармов и причин закрытия в БД

Scheduled Pinned Locked Moved Support (Russian)
8 Posts 2 Posters 32.1k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • E
    E
    enp
    wrote on last edited by
    #1

    Здравствуйте!

    Получить список алармов из БД (PostgreSQL) можно так:

    select
        name,
        message,
        timestamp 'epoch' + creation_time * interval '1 second' as begin,
        timestamp 'epoch' + last_change_time * interval '1 second' as last_change
    from alarms inner join object_properties
        on source_object_id = object_id
    order by creation_time desc
    

    Однако я не могу найти поле с отметкой о том, когда аларм был закрыт, а также кем и по какой причине.

    1 Reply Last reply
    0
    • E
      E
      enp
      wrote on last edited by
      #2

      Да, искать по БД приходится не от хорошей жизни - в Alarm Log с фильтром по Source удается найти записи до апреля, остальных нет. Хотя в БД с тем же object_id есть записи вплоть до сегодняшнего дня. Что может так влиять на неотображение данных?

      1 Reply Last reply
      0
      • V
        V
        Victor Kirhenshtein
        wrote on last edited by
        #3

        Странно. На всякий случай - в лог выдаются первые 400 найденных записей, следующие подгружаются при нажатии "get more data" - действительно больше ничего не выдается?

        1 Reply Last reply
        0
        • E
          E
          enp
          wrote on last edited by
          #4

          Спасибо, я просто не увидел кнопочку "get more data" 🙂

          Однако вопрос с выборкой алармов средствами SQL по-прежнему актуален, потому что текущее представление включает слишком много колонок. Актуальность, наверное, потеряется только с решением этой проблемы -  https://www.radensolutions.com/chiliproject/issues/224

          1 Reply Last reply
          0
          • V
            V
            Victor Kirhenshtein
            wrote on last edited by
            #5

            Вот такой SQL даст пользователей, которые делали acknowledge, resolve, и terminate:

            select
                op.name,
                message,
                creation_time as begin,
                last_change_time as last_change,
                u1.name as user_ack_by,
                u2.name as user_resolved_by,
                u3.name as user_term_by
            from alarms
            inner join object_properties op
                on source_object_id = object_id
            left outer join users u1
                on u1.id=ALARMS.ack_by
            left outer join users u2
                on u1.id=ALARMS.resolved_by
            left outer join users u3
                on u1.id=ALARMS.term_by
            order by creation_time desc
            

            Отдельных timestamp'ов на это нет, при каждом изменении обновляется last_change_time.

            1 Reply Last reply
            0
            • E
              E
              enp
              wrote on last edited by
              #6

              Т.е. закрытые алармы - это те, у которых term_by <> 0, и в этом случае дата/время закрытия - last_change_time?

              1 Reply Last reply
              0
              • V
                V
                Victor Kirhenshtein
                wrote on last edited by
                #7

                Не совсем так. Надо проверять на alarm_state = 3, term_by может быть равен 0 если аларм был закрыт пользователем admin или системой. last_change_time будет в этом случае содержать время закрытия, да.

                1 Reply Last reply
                0
                • E
                  E
                  enp
                  wrote on last edited by
                  #8

                  понятно, спасибо!

                  1 Reply Last reply
                  0

                  Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                  Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                  With your input, this post could be even better 💗

                  Register Login
                  Reply
                  • Reply as topic
                  Log in to reply
                  • Oldest to Newest
                  • Newest to Oldest
                  • Most Votes


                  • Login

                  • Don't have an account? Register

                  • Login or register to search.
                  Powered by NodeBB Contributors
                  • First post
                    Last post
                  0
                  • Categories
                  • Recent
                  • Tags
                  • Popular
                  • Users
                  • Groups