glpi-project / glpi

GLPI is a Free Asset and IT Management Software package, Data center management, ITIL Service Desk, licenses tracking and software auditing.
https://glpi-project.org
GNU General Public License v3.0
4.08k stars 1.27k forks source link

Mail notification not generated for Automated Task CheckAllUpdates #14359

Closed mrdanleey closed 1 year ago

mrdanleey commented 1 year ago

Code of Conduct

Is there an existing issue for this?

Version

10.0.6

Bug description

Automated Task checkAllUpdates has execution error when there is a new plugin update available.

image

I cannot find what the execution error is, but I noticed that the email notification for new plugins is not generated. When I disable mail notifications in GLPI i receive no errors when executing the task so it has something to do with the mail notification.

The strange thing is that the log file (mail.log) registers that the mail notification is send, but it isn't created / send. The last mail in this log is send with the notification that the automated task is not done right.

Relevant log output

mail.log:

Een e-mail werd verzonden naar d.feenstra@nordwincollege.nl: [GLPI] Some updates are available for your installed plugins!
2023-03-22 12:51:59 [2@servlwdf1.com]
Een e-mail werd verzonden naar d.feenstra@nordwincollege.nl: [GLPI] Monitoring van automatische acties

php-error.log:

[2023-03-22 14:30:19] glpiphplog.CRITICAL:   *** Uncaught Exception Error: Call to undefined method Glpi\Marketplace\Controller::getFromDB() in /var/www/GLPI/src/NotificationEventAbstract.php at line 112
  Backtrace :
  src/NotificationEvent.php:187                      NotificationEventAbstract::raise()
  src/Marketplace/Controller.php:349                 NotificationEvent::raiseEvent()
  src/CronTask.php:1018                              Glpi\Marketplace\Controller::cronCheckAllUpdates()
  front/crontask.form.php:52                         CronTask::launch()

Page URL

/front/crontask.form.php?id=37

Steps To reproduce

Run the automated task checkAllPlugins Go to tab "logs" and click on the date to see the results

Your GLPI setup information

Informatie installatie en configuratie van het systeem
GLPI 10.0.6 ( => /var/www/GLPI)
Installation mode: TARBALL
Current language:nl_NL

Server
 
Operating system: Linux servlwdf1.com 5.4.0-144-generic #161-Ubuntu SMP Fri Feb 3 14:49:04 UTC 2023 x86_64
PHP 7.4.33 apache2handler (Core, FFI, PDO, Phar, Reflection, SPL, SimpleXML, Zend OPcache, apache2handler, apc, apcu, bcmath,
    bz2, calendar, ctype, curl, date, dom, exif, fileinfo, filter, ftp, gd, gettext, hash, iconv, imagick, imap, intl, json, ldap,
    libxml, mbstring, mysqli, mysqlnd, openssl, pcre, pdo_mysql, posix, readline, session, shmop, soap, sockets, sodium, standard,
    sysvmsg, sysvsem, sysvshm, tokenizer, xml, xmlreader, xmlrpc, xmlwriter, xsl, zip, zlib, zmq)
Setup: max_execution_time="30" memory_limit="128M" post_max_size="500M" safe_mode="" session.save_handler="files"
    upload_max_filesize="500M" 
Software: Apache/2.4.41 (Ubuntu) (Apache/2.4.41 (Ubuntu) Server at nordwinit2.nl Port 80
)
    Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36 Edg/111.0.1661.44
Server Software: Ubuntu 20.04
    Server Version: 10.3.38-MariaDB-0ubuntu0.20.04.1
    Server SQL Mode: STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
    Parameters: nordwindatabase@localhost/GLPI
    Host info: Localhost via UNIX socket

PHP version (7.4.33) is supported.
Sessions configuration is OK.
Allocated memory is sufficient.
mysqli extension is installed.
Following extensions are installed: dom, fileinfo, json, simplexml.
curl extension is installed.
gd extension is installed.
intl extension is installed.
libxml extension is installed.
zlib extension is installed.
The constant SODIUM_CRYPTO_AEAD_XCHACHA20POLY1305_IETF_NPUBBYTES is present.
Database engine version (10.3.38) is supported.
We detected files of previous versions of GLPI.
Please update GLPI by following the procedure described in the installation documentation.
The log file has been created successfully.
Write access to /var/www/GLPI/files/_cache has been validated.
Write access to /var/www/GLPI/config has been validated.
Write access to /var/www/GLPI/files/_cron has been validated.
Write access to /var/www/GLPI/files has been validated.
Write access to /var/www/GLPI/files/_dumps has been validated.
Write access to /var/www/GLPI/files/_graphs has been validated.
Write access to /var/www/GLPI/files/_lock has been validated.
Write access to /var/www/GLPI/files/_pictures has been validated.
Write access to /var/www/GLPI/files/_plugins has been validated.
Write access to /var/www/GLPI/files/_rss has been validated.
Write access to /var/www/GLPI/files/_sessions has been validated.
Write access to /var/www/GLPI/files/_tmp has been validated.
Write access to /var/www/GLPI/files/_uploads has been validated.
The following directories should be placed outside "/var/www/GLPI":
‣ "/var/www/GLPI/files" ("GLPI_VAR_DIR")
‣ "/var/www/GLPI/config" ("GLPI_CONFIG_DIR")
You can ignore this suggestion if you are certain that these directories are not accessible through your web server.
PHP directive "session.cookie_httponly" should be set to "on" to prevent client-side script to access cookie values.
exif extension is installed.
ldap extension is installed.
openssl extension is installed.
zip extension is installed.
bz2 extension is installed.
Zend OPcache extension is installed.
Following extensions are installed: ctype, iconv, mbstring, sodium.
Write access to /var/www/GLPI/marketplace has been validated.
Timezones seems loaded in database.

GLPI constants
 
GLPI_ROOT: "/var/www/GLPI"
GLPI_CONFIG_DIR: "/var/www/GLPI/config"
GLPI_VAR_DIR: "/var/www/GLPI/files"
GLPI_MARKETPLACE_DIR: "/var/www/GLPI/marketplace"
GLPI_USE_CSRF_CHECK: "1"
GLPI_CSRF_EXPIRES: "7200"
GLPI_CSRF_MAX_TOKENS: "100"
GLPI_USE_IDOR_CHECK: "1"
GLPI_IDOR_EXPIRES: "7200"
GLPI_ALLOW_IFRAME_IN_RICH_TEXT: false
GLPI_SERVERSIDE_URL_ALLOWLIST: ["/^(https?|feed):\\/\\/[^@:]+(\\/.*)?$/"]
GLPI_TELEMETRY_URI: "https://telemetry.glpi-project.org"
GLPI_INSTALL_MODE: "TARBALL"
GLPI_NETWORK_MAIL: "glpi@teclib.com"
GLPI_NETWORK_SERVICES: "https://services.glpi-network.com"
GLPI_MARKETPLACE_ALLOW_OVERRIDE: true
GLPI_MARKETPLACE_MANUAL_DOWNLOADS: true
GLPI_USER_AGENT_EXTRA_COMMENTS: ""
GLPI_DISABLE_ONLY_FULL_GROUP_BY_SQL_MODE: "1"
GLPI_AJAX_DASHBOARD: "1"
GLPI_CALDAV_IMPORT_STATE: 0
GLPI_DEMO_MODE: "0"
GLPI_CENTRAL_WARNINGS: "1"
GLPI_DOC_DIR: "/var/www/GLPI/files"
GLPI_CACHE_DIR: "/var/www/GLPI/files/_cache"
GLPI_CRON_DIR: "/var/www/GLPI/files/_cron"
GLPI_DUMP_DIR: "/var/www/GLPI/files/_dumps"
GLPI_GRAPH_DIR: "/var/www/GLPI/files/_graphs"
GLPI_LOCAL_I18N_DIR: "/var/www/GLPI/files/_locales"
GLPI_LOCK_DIR: "/var/www/GLPI/files/_lock"
GLPI_LOG_DIR: "/var/www/GLPI/files/_log"
GLPI_PICTURE_DIR: "/var/www/GLPI/files/_pictures"
GLPI_PLUGIN_DOC_DIR: "/var/www/GLPI/files/_plugins"
GLPI_RSS_DIR: "/var/www/GLPI/files/_rss"
GLPI_SESSION_DIR: "/var/www/GLPI/files/_sessions"
GLPI_TMP_DIR: "/var/www/GLPI/files/_tmp"
GLPI_UPLOAD_DIR: "/var/www/GLPI/files/_uploads"
GLPI_INVENTORY_DIR: "/var/www/GLPI/files/_inventories"
GLPI_NETWORK_REGISTRATION_API_URL: "https://services.glpi-network.com/api/registration/"
GLPI_MARKETPLACE_PLUGINS_API_URI: "https://services.glpi-network.com/api/glpi-plugins/"
GLPI_I18N_DIR: "/var/www/GLPI/locales"
GLPI_VERSION: "10.0.6"
GLPI_SCHEMA_VERSION: "10.0.6@21cffee0fbb5afbf0d580cabdf6fd7a922598f97"
GLPI_MARKETPLACE_PRERELEASES: false
GLPI_MIN_PHP: "7.4.0"
GLPI_MAX_PHP: "8.3.0"
GLPI_YEAR: "2023"

Libraries
 
htmlawed/htmlawed version 1.2.9 in (/var/www/GLPI/vendor/htmlawed/htmlawed)
phpmailer/phpmailer version 6.6.0 in (/var/www/GLPI/vendor/phpmailer/phpmailer/src)
simplepie/simplepie version 1.5.8 in (/var/www/GLPI/vendor/simplepie/simplepie/library)
tecnickcom/tcpdf version 6.4.4 in (/var/www/GLPI/marketplace/pdf/vendor/tecnickcom/tcpdf)
michelf/php-markdown in (/var/www/GLPI/vendor/michelf/php-markdown/Michelf)
true/punycode in (/var/www/GLPI/vendor/true/punycode/src)
iamcal/lib_autolink in (/var/www/GLPI/vendor/iamcal/lib_autolink)
sabre/dav in (/var/www/GLPI/vendor/sabre/dav/lib/DAV)
sabre/http in (/var/www/GLPI/vendor/sabre/http/lib)
sabre/uri in (/var/www/GLPI/vendor/sabre/uri/lib)
sabre/vobject in (/var/www/GLPI/vendor/sabre/vobject/lib)
laminas/laminas-i18n in (/var/www/GLPI/vendor/laminas/laminas-i18n/src)
laminas/laminas-servicemanager in (/var/www/GLPI/vendor/laminas/laminas-servicemanager/src)
monolog/monolog in (/var/www/GLPI/vendor/monolog/monolog/src/Monolog)
sebastian/diff in (/var/www/GLPI/vendor/sebastian/diff/src)
donatj/phpuseragentparser in (/var/www/GLPI/vendor/donatj/phpuseragentparser/src/UserAgent)
elvanto/litemoji in (/var/www/GLPI/vendor/elvanto/litemoji/src)
symfony/console in (/var/www/GLPI/vendor/symfony/console)
scssphp/scssphp in (/var/www/GLPI/vendor/scssphp/scssphp/src)
laminas/laminas-mail in (/var/www/GLPI/vendor/laminas/laminas-mail/src/Protocol)
laminas/laminas-mime in (/var/www/GLPI/vendor/laminas/laminas-mime/src)
rlanvin/php-rrule in (/var/www/GLPI/vendor/rlanvin/php-rrule/src)
blueimp/jquery-file-upload in (/var/www/GLPI/vendor/blueimp/jquery-file-upload/server/php)
ramsey/uuid in (/var/www/GLPI/vendor/ramsey/uuid/src)
psr/log in (/var/www/GLPI/vendor/psr/log/Psr/Log)
psr/simple-cache in (/var/www/GLPI/vendor/psr/simple-cache/src)
psr/cache in (/var/www/GLPI/vendor/psr/cache/src)
league/csv in (/var/www/GLPI/vendor/league/csv/src)
mexitek/phpcolors in (/var/www/GLPI/vendor/mexitek/phpcolors/src/Mexitek/PHPColors)
guzzlehttp/guzzle in (/var/www/GLPI/vendor/guzzlehttp/guzzle/src)
guzzlehttp/psr7 in (/var/www/GLPI/vendor/guzzlehttp/psr7/src)
glpi-project/inventory_format in (/var/www/GLPI/vendor/glpi-project/inventory_format/lib/php)
wapmorgan/unified-archive in (/var/www/GLPI/vendor/wapmorgan/unified-archive/src)
paragonie/sodium_compat in (/var/www/GLPI/vendor/paragonie/sodium_compat/src)
symfony/cache in (/var/www/GLPI/vendor/symfony/cache)
html2text/html2text in (/var/www/GLPI/vendor/html2text/html2text/src)
symfony/css-selector in (/var/www/GLPI/vendor/symfony/css-selector)
symfony/dom-crawler in (/var/www/GLPI/vendor/symfony/dom-crawler)
twig/twig in (/var/www/GLPI/vendor/twig/twig/src)
twig/string-extra in (/var/www/GLPI/vendor/twig/string-extra)
symfony/polyfill-ctype not found
symfony/polyfill-iconv not found
symfony/polyfill-mbstring not found
symfony/polyfill-php80 in (/var/www/GLPI/vendor/symfony/polyfill-php80)
symfony/polyfill-php81 in (/var/www/GLPI/vendor/symfony/polyfill-php81)
symfony/polyfill-php82 in (/var/www/GLPI/vendor/symfony/polyfill-php82)
phpCas version 1.3.8 in (/usr/share/php/CAS/source)

SQL replicas
 
Not active

Notifications
 
Way of sending emails: PHP

Plugins list
 
    actualtime           Name: ActualTime                     Version: 2.1.0      State: Enabled                                 
        Install Method: Marketplace
    fields               Name: Additional fields              Version: 1.20.1     State: To update                               
        Install Method: Marketplace
    advancedplanning     Name: advancedplanning               Version: 1.1.0      State: Enabled                                 
        Install Method: Marketplace
    badges               Name: Badges                         Version: 3.0.0      State: Enabled                                 
        Install Method: Marketplace
    barcode              Name: Barcode                        Version: 2.7.1      State: Enabled                                 
        Install Method: Marketplace
    costs                Name: Costs                          Version: 3.0.1      State: Enabled                                 
        Install Method: Marketplace
    credit               Name: Credit vouchers                Version: 1.11.3     State: Enabled                                 
        Install Method: Marketplace
    datainjection        Name: Data injection                 Version: 2.13.0     State: Enabled                                 
        Install Method: Marketplace
    escalade             Name: Escalation                     Version: 2.8.2      State: Enabled                                 
        Install Method: Marketplace
    formcreator          Name: Form Creator                   Version: 2.13.4     State: Enabled                                 
        Install Method: Marketplace
    fusioninventory      Name: FusionInventory                Version: 10.0.6+1.1 State: Enabled                                 
        Install Method: Manual
    gappessentials       Name: Gapp Essentials                Version: 2.1.1      State: Enabled                                 
        Install Method: Marketplace
    geninventorynumber   Name: Inventory number generation    Version: 2.8.3      State: Enabled                                 
        Install Method: Marketplace
    mreporting           Name: More Reporting                 Version: 1.8.2      State: Enabled                                 
        Install Method: Marketplace
    genericobject        Name: Objects management             Version: 2.14.1     State: Enabled                                 
        Install Method: Marketplace
    order                Name: Orders management              Version: 2.10.1     State: Enabled                                 
        Install Method: Marketplace
    pdf                  Name: Printen naar pdf               Version: 3.0.0      State: Enabled                                 
        Install Method: Marketplace
    room                 Name: Rooms                          Version: 3.1.4      State: Enabled                                 
        Install Method: Manual
    useditemsexport      Name: Used items export              Version: 2.5.1      State: Enabled                                 
        Install Method: Marketplace
    webresources         Name: Web Resources                  Version: 2.0.3      State: Enabled                                 
        Install Method: Marketplace

Anything else?

No response

cedric-anne commented 1 year ago

Hi,

Should be fixed by #14360