Ad Widget

Collapse

Zabbix trigger based on string output

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • dragan979
    Member
    • Apr 2018
    • 49

    #1

    Zabbix trigger based on string output

    Code:
     #!/bin/bash   curl -s -H "Accept: application/json" -X GET "http://172.30.61.88:4440/api/20/project/demo/executions?authtoken=ZP9znayUp3Ktp26uQjSQGnEfTzDvqPDA"  | python -m json.tool > 1.json  jq -r '.|[.executions[] | select(.job.name != null)]  | sort_by(.id)  | reverse  | .[0]  | [.status, .job.name, ."date-ended".date] | @csv' 1.json > 1.csv  sed 's/,/ /g' 1.csv>st.txt while read status name date; do case "$status" in "\"aborted\"") echo -1 ;;  "\"failed\"") echo -1 +$name ;;  "\"succeeded\"") echo 0 + $name ;; *) echo 0 + $name esac exit 0 done<st.txt

    I have script which monitors rundeck jobs and returns job state with job name, is it possible to add script output ($name) to trigger so i can see job name in alert




    Click image for larger version

Name:	Capture.PNG
Views:	2925
Size:	21.1 KB
ID:	356458
    Attached Files
    Last edited by dragan979; 04-04-2018, 07:49.
  • aigars.kadikis
    Senior Member
    Zabbix Certified SpecialistZabbix Certified Professional
    • Mar 2018
    • 208

    #2
    Hello, dragan979!

    Use {ITEM.VALUE} in trigger name field
    If you have multiple items in trigger definition then you need to use {ITEM.VALUE1}, {ITEM.VALUE2}, ..

    Regards,
    Aigars

    Comment

    • dragan979
      Member
      • Apr 2018
      • 49

      #3
      thanks aigars.kadikis, my item is named rundeck, so in this case i need to add {rundeck.VALUE} ?, can't try it now, only in the evening

      Comment

      • aigars.kadikis
        Senior Member
        Zabbix Certified SpecialistZabbix Certified Professional
        • Mar 2018
        • 208

        #4
        Originally posted by dragan979
        thanks aigars.kadikis, my item is named rundeck, so in this case i need to add {rundeck.VALUE} ?, can't try it now, only in the evening
        No.
        You need to use just exact {ITEM.VALUE} or even better {ITEM.VALUE1}

        Explanation:
        Every item value (custom or built-in) which are used in trigger expression gets automatically converted to hard coded variable/macro named {ITEM.VALUE}.
        Once there is more than one item used in trigger expression then these variables get automatically numbered like:
        {ITEM.VALUE1}
        {ITEM.VALUE2}
        ..

        Regards,
        Aigars

        Comment

        • dragan979
          Member
          • Apr 2018
          • 49

          #5
          yes, this is it !, just as i wanted !!, thanks !!1

          Comment

          • Ahmad Abu hashem
            Junior Member
            • Jul 2019
            • 9

            #6
            dragan979 what you had to do to fix that!

            Comment

            • Ahmad Abu hashem
              Junior Member
              • Jul 2019
              • 9

              #7
              I have simple script which give one value, I need to have warning if this value is more than 35

              Comment

              • tomdom
                Member
                • Nov 2021
                • 38

                #8
                Hey, I have a similar problem, I download data from JSON, I get true I added in macro 1 = true, 0 = false. How do I add a trigger to make it work when false?

                Comment

                Working...