[SOLVED] Change check interval of my own datasource program checks

Hello dear forum members,

our company bought Check MK Enterprise, we are now on Version 1.6.0p15.

A few explaining words for the setup

  • monitoring websites (no agent installation possible)
  • monitoring stuff like Website-Quota (how much space left?)
  • all those monitored websites are in a WATO-Folder called “Websites”
  • We are monitoring this through a datasource program (written by myself, php file, execution works fine, services get created and Check MK finds and displays them)

What I want to achieve
My self written datasource program check should only be executed every 6 hours.

The Problem I am facing
No matter what I put into the normal interval for checks, the services always have 60 seconds check interval.

What I tried
Host and Service Parameters / Monitoring Configuration / Service labels / add a service label to the corresponding services
This works perfectly fine.
Now all my services (and only my services, nothing else) have a service label on it.
I tested the service label by creating a view which only shows the services with my label on it.

Host and Service Parameters / Monitoring Configuration / Normal check interval for service checks
Now here comes the part I struggle with:

  • Creating a rule for the WHOLE WATO-FOLDER “Websites” WITHOUT any conditions and setting it to 6 hours check interval WORKS (but now EVERY check has 6 hours check interval which I do not want)
  • Creating a rule for folder “Websites” with my Service label as condition DOES NOT WORK (the corresponding services show 60s as check interval)
  • Creating a rule for folder “Websites” with the Service Names (like Website-Quota, which is what Check MK shows to be the service name) DOES NOT WORK (services check interval again 60s)

What definitely seems to be working
My datasource program check obviously works, because I can see the created services, they have the right SERVICE_STATE (OK, WARN, …), CheckMK even shows the desired output and they get updated regularly.

My Service Label also works, because I tested this with my view which only shows the services with the my service label.

I hope some of you might point me in the right direction for solving this.
I’m sure it’s something small, but I just can’t pinpoint it.

If all your hosts inside this folder use the same datasource program then this is the right way.
The only active check by the system is the “Check_MK” service and behind this service is your datasource program.

Inside the rule “Normal check interval for service checks” you can define only the “Check_MK$” as a service name condition. The check interval you define for the “Check_MK” service is also the check interval for all dependent passive services.

Thank you for taking the time to answer my question.

Just so I get this right:

  • The Check_MK Service actually is the trigger for my Datasource program?
  • So everything (rules etc.) which applies to the Service “Check_MK” also applies (if applicable) to my datasource program?
  • Is that because my Datasource program has the line echo <<<local>>> for every service it echoes?

Yes

Not directly. You datasource program runs and gives some data back to the system. Only the interval is defined by the Check_MK service.

This is the data given back to your monitoring system. The header ‘<<>>’ is only a check type and CMK knows what it should do with the data after the header.
Your datasource program don’t need to output more than one ‘<<>>’ header. If all output is done as a local check one header at the beginning of the output would be enough.

Example

<<<local>>>
0 Check1 - The result is 1
0 Check2 - The result is 0
1 Check3 - The result is 5

And so on.

Thank you very much for your fast and comprehensive answers.
Thanks to you, I was able to do the following:

  • The Service Check_MK now also gets my Service-Label (only inside the WATO-Folder “Websites”)
  • Now that all affected Services bear the Service-Label, setting the check-interval based on the Service-Label works
  • All Check_MK Services outside of the WATO-Folder run with default check-interval.

I will mark your first answer as solution, as this holds enough information for me to solve my problem.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.