Check_multi / multi lines in plugin output

Hello icinga2 folks,
I’m about to migrate from icinga to icinga2. My plan is to migrate first the icinga2 core and icinga2 web, so I will leave the check endpoints as they are at the moment (nrpe instead of icinga2 agent).

services.conf (later with apply-rules):

object Service "multi_ipa_client" {                                                                                                                                                                                
check_command = "nrpe"                                                                                                                                                                                             
host_name = "john-doe.server"                                                                                                                                                        
vars.nrpe_command = "check_multi_ipa_client"                                                                                                                                                                       
vars.nrpe_timeout = "120"                                                                                                                                                                                          
vars.nrpe_arguments = "$address$"                                                                                                                                                                                  
}

On the nrpe client:
command[check_multi_ipa_client]=/usr/lib64/nagios/plugins/check_multi -t 60 -T 180 -n IPA_Client -f /etc/nagios/multi_ipa_client.cmd -r207 -s HOSTNAME=$ARG1$

Icinga2 Web plugin output:
icinga2

Icinga Web plugin output:
icinga

Is it possible to make the icinga2 web plugin output multiline suitable? Or am I missing something?

Many thanks in advance!

With best regards
David

Hmmm, which version of Icinga Web is involved here?

icingaweb2-2.7.1-1.el7.icinga.noarch
icingaweb2-common-2.7.1-1.el7.icinga.noarch
icingaweb2-vendor-JShrink-2.7.1-1.el7.icinga.noarch
icingaweb2-vendor-HTMLPurifier-2.7.1-1.el7.icinga.noarch
icingaweb2-vendor-dompdf-2.7.1-1.el7.icinga.noarch
icingaweb2-vendor-lessphp-2.7.1-1.el7.icinga.noarch
icingaweb2-vendor-zf1-2.7.1-1.el7.icinga.noarch
icingaweb2-vendor-Parsedown-2.7.1-1.el7.icinga.noarch

Hi Michael,
so regarding to your question, icingaweb2 is still supporting multi lines in the check output? In this case I have configuration issue or a software version bug? My icingaweb2 version you can see at the post above, I did forgot to set it to reply.

Hi,

I don’t immediately reply to questions when I don’t have an answer, or wanted to read more about it.

Now in that case I thought that Icinga Web could likely support check_multi, but I don’t have a test environment here. So the raw example string could help. I do know that Icinga Web supports specific tree building with outputs and better rendering, but I have no idea if that’s compatible to check_multi (dead project btw).

Example:

object Host "formatting" {
  check_command = "dummy"
  vars.dummy_text = "[OK] #lifeatnetways\n[WARNING] keksi\n[CRITICAL] gin"
}

11

Cheers,
Michael

Fully understandable. And thanks for the help so far.

I thought the same, till I tried it out.

I confirm, the raw example also works and looks the same in my environment.

My plan was to first migrate all the checks successful to icinga2 and after to change the check structure. I now just have played around with the check_multi --report . The result:

3

As it seems check_multi is indeed not compatible with icinga2. Do you have any suggestion, how it would be fixable without many effort? Or how I would implement multi checks in the future with icinga2 agent? Or is the concept of multi checks deprecated?

Maybe patch check_multi to render the output tree differently and use the state markers. Or you‘ll render html, and yet better - Markdown. 2.7 fully supports Markdown in output and notes afaik.

Thanks, I will try your advice after I have migrate all of our other checks or separate those checks when using icinga2 agent.

By the way, is it recommended to split all checks? Or does the icinga2 agent support multi checks?