Icingaweb2: Can't re-enable notifications after update to 2.6.0

Created on 19 Jul 2018  路  5Comments  路  Source: Icinga/icingaweb2

Expected Behavior



Under .../icingaweb2/monitoring/health/info you should be able to enable/disable monitoring functions globally

Current Behavior



I disabled notifications before updating to 2.6.0 via http:///icingaweb2/monitoring/health/info by removing the check.
After the update I'm now unable to re-enable notifications and get the following stack trace



icinga2: Array to string conversion.

#0 /usr/share/icingaweb2/modules/monitoring/application/forms/Command/Instance/ToggleInstanceFeaturesCommandForm.php(269): Icinga\Module\Monitoring\Command\Transport\CommandTransport->send(Object(Icinga\Module\Monitoring\Command\Instance\ToggleInstanceFeatureCommand))
#1 /usr/share/php/Icinga/Web/Form.php(1158): Icinga\Module\Monitoring\Forms\Command\Instance\ToggleInstanceFeaturesCommandForm->onSuccess()
#2 /usr/share/icingaweb2/modules/monitoring/application/controllers/HealthController.php(99): Icinga\Web\Form->handleRequest()
#3 /usr/share/icingaweb2/library/vendor/Zend/Controller/Action.php(507): Icinga\Module\Monitoring\Controllers\HealthController->infoAction()
#4 /usr/share/php/Icinga/Web/Controller/Dispatcher.php(76): Zend_Controller_Action->dispatch(String)
#5 /usr/share/icingaweb2/library/vendor/Zend/Controller/Front.php(937): Icinga\Web\Controller\Dispatcher->dispatch(Object(Icinga\Web\Request), Object(Icinga\Web\Response))
#6 /usr/share/php/Icinga/Application/Web.php(300): Zend_Controller_Front->dispatch(Object(Icinga\Web\Request), Object(Icinga\Web\Response))
#7 /usr/share/php/Icinga/Application/webrouter.php(104): Icinga\Application\Web->dispatch()
#8 /usr/share/icingaweb2/public/index.php(4): require_once(String)
#9 {main}

Steps to Reproduce (for bugs)


  1. Disabled notifications globally
  2. Update to 2.6.0
  3. try re-enabling the updates
    4.

Your Environment

  • Icinga Web 2 version and modules (System - About): 2.6.0
  • Version used (icinga2 --version): 2.9.0
  • Operating System and version: CentOS Linux release 7.5.1804 (Core)
  • Enabled features (icinga2 feature list): api checker command ido-mysql mainlog notification perfdata
  • PHP version (from <?php phpinfo(); ?>): PHP Version 7.2.8 (updated using this)
  • Icingaweb.conf
    ```Alias /icingaweb2 "/usr/share/icingaweb2/public"


# Forward PHP requests to FPM
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

ProxyPassMatch "fcgi://127.0.0.1:9000/usr/share/icingaweb2/public/$1"


Options SymLinksIfOwnerMatch
AllowOverride None

DirectoryIndex index.php

<IfModule mod_authz_core.c>
    # Apache 2.4
    <RequireAll>
        Require all granted
    </RequireAll>
</IfModule>

<IfModule !mod_authz_core.c>
    # Apache 2.2
    Order allow,deny
    Allow from all
</IfModule>

SetEnv ICINGAWEB_CONFIGDIR "/etc/icingaweb2"

EnableSendfile Off

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /icingaweb2/
    RewriteCond %{REQUEST_FILENAME} -s [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^.*$ index.php [NC,L]
</IfModule>

<IfModule !mod_rewrite.c>
    DirectoryIndex error_norewrite.html
    ErrorDocument 404 /icingaweb2/error_norewrite.html
</IfModule>

<IfVersion >= 2.4>
    # Forward PHP requests to FPM
    SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
    <FilesMatch "\.php$">
        SetHandler "proxy:fcgi://127.0.0.1:9000"
        ErrorDocument 503 /icingaweb2/error_unavailable.html
    </FilesMatch>
</IfVersion>


```

aremonitoring bug

Most helpful comment

Hi,

Thanks for the feedback. We'll release a 2.6.1 on Thursday this week which includes this fix.

Cheers,
Eric

All 5 comments

Hi,

thanks for reporting this here!

For anyone else facing this issue: If possible, you may workaround this by switching to a local/remote command pipe transport backend. This bug does only apply if you're sending commands over the Icinga API.

same issue here on Ubuntu 16.04, icinga2 2.9.1-1.xenial, icingaweb2 2.6.0-1.xenial
Unfortunately command pipe is not really an easy workaround for us when icingaweb2 is on a different server.

Try applying the patch from the linked PR.

Hi,
Same issue here since 2.6.0 but also when trying to enable/disable notification only on 1 service (not globally).
The linked PR #3537 looks working for me. I didnt found any side-effect right now.

Hi,

Thanks for the feedback. We'll release a 2.6.1 on Thursday this week which includes this fix.

Cheers,
Eric

Was this page helpful?
0 / 5 - 0 ratings