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
  3. Querying DCI Table history

Querying DCI Table history

Scheduled Pinned Locked Moved Support
6 Posts 3 Posters 39.9k 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.
  • S
    S
    SpotTheCat
    wrote on last edited by
    #1

    Hello Forum,

    I know that a number of people have raised this but I can't find any answers on the forum.

    I've seen this solution for getting the current values of a DCI table.

    https://www.netxms.org/forum/general-support/get-values-from-a-dci-table-with-a-tranform-script/msg17281/#msg17281

    That's great - but is there a similar way to enumerate and display the complete history for a DCI table? We have some monitors which get results of logins every few minutes. If there is a suspicious login it raises an alert. After 10 minutes the DCI table will no longer display the row but the alert will remain. As the identity column is just a session number that doesn't give us enough information to see who logged in and where from. So we need to be able to see the history. Also if we need to use this information for evidence then we'll need to get back to it to.

    Perhaps a DCI table isn't the best way to do this but I can't see a better way to handle it at the moment. The main issue is that we're monitoring a cloud solution and the only way to pickup the logins is via their API for a period of time.

    Best regards

    Spot

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

      Hi,

      seems that currently it is not possible. There is feature request for that for some time already: https://track.radensolutions.com/issue/NX-1483, which we will definitely implement at some point. Also NXSL function GetDCIValues could be fairly easily modified to return list of table DCI values for given period.

      Best regards,
      Victor

      1 Reply Last reply
      0
      • M
        M
        Mishal
        wrote on last edited by
        #3

        Hello Victor,

        I would like to have the same feature to be able to query last values for a table row.
        Is there a way to make feature request and github repository and then submit a pull request.

        Thanks,
        Mishal

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

          Hi,

          sure, you can clone our GitHub repository (https://github.com/netxms/netxms), do necessary changes, and submit a pull request (with usual GitHub mechanisms).

          Best regards,
          Victor

          1 Reply Last reply
          0
          • M
            M
            Mishal
            wrote on last edited by
            #5

            Okay Victor,
            Would appreciate it if you could point me towards a contribution guide and what part of the codebase contains these methods.

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

              Hi,

              most likely you'll have to look at NXSL extensions, data collection related functions are in src/server/core/dc_nxsl.cpp. Look for F_GetDCIValues - it is implementation of getting history for single value DCIs, and GetDCIValueImpl - it will give you idea how to return table value as NXSL object. Then you will need code to unpack table values. You can take a look at src/server/core/session.cpp, method ClientSession::getCollectedDataFromDB - you will be interested in code part around call Table::createFromPackedXML.

              Best regards,
              Victor

              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