Ad Widget

Collapse

Zabbix 7.0 - Sending data to Zabbix server via Zabbix API Question

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • james.cook000@gmail.com
    Member
    • Apr 2018
    • 49

    #1

    Zabbix 7.0 - Sending data to Zabbix server via Zabbix API Question

    I was thinking about this new functionality and would like to know if this takes into account item data pre-processing? and what happens if the zabbix host is monitored by the proxy?
  • cyber
    Senior Member
    Zabbix Certified SpecialistZabbix Certified Professional
    • Dec 2006
    • 4807

    #2
    Considering that "Note that receiving sent data requires a configured trapper item or an HTTP agent item (with trapping enabled).​"
    I would assume, that all data is going through preprocessing defined in item config.

    I think proxy does not matter here... You are submitting data via API, so proxy is just ignored..

    Comment

    • james.cook000@gmail.com
      Member
      • Apr 2018
      • 49

      #3
      Im pretty sure with trapper items they still need to be sent to the correct zabbix server or proxy that the host is assigned to via zabbix sender.

      With this new api method it hits the web server rather than server/proxy which is why i am seeking some clarrification on whether the preprocessing is invoked if it is defined for the item

      My suspicion is it is not?

      Comment

      • cyber
        Senior Member
        Zabbix Certified SpecialistZabbix Certified Professional
        • Dec 2006
        • 4807

        #4
        it is an API call, you cannot hit proxy with it... there is no API endpoint on proxy.

        Comment

        • james.cook000@gmail.com
          Member
          • Apr 2018
          • 49

          #5
          This is exactly my point and question.....

          Although pushing data via the API seems like a handy feature I dont believe that item preprocessing has been taken into account (as mentioned above).

          Consider this scenario, an item is configured (str|text) that uses pre-processing to convert from lowercase to uppercase.

          If the data 'lowercase_text' is sent via zabbix_sender the pre-processsing on the server/proxy will store the data 'LOWERCASE_TEXT' as the server/proxy pre-processing handles this.

          If the data 'lowercase_text' is sent via API call history.push() then there is no pre-processing and the data will be stored as 'lowercase_text'.

          This will produce inconsistencies in the data which may following on from that produce unexpected results in trigger evaluation etc...

          If Zabbix can clarrify this and work out a way that pre-processing could be factored in somehow.

          Comment

          • cyber
            Senior Member
            Zabbix Certified SpecialistZabbix Certified Professional
            • Dec 2006
            • 4807

            #6
            If I remember tomorrow to fire up my lab v7, I will test it..
            EDIT: Have faith.. Preprocessing is used, also access restrictions are applied etc. Just as I predicted..
            Last edited by cyber; 30-10-2023, 21:10.

            Comment

            • james.cook000@gmail.com
              Member
              • Apr 2018
              • 49

              #7
              Why did i doubt ...

              That will be very handy indeed and gets rid of the issue of sending data to the correct proxy etc....

              Thanks for testing.

              Comment

              Working...