Geolocation causing Oops message after upgrade

Hi

Recently upgraded to Matomo 4.10.1 on RHEL 7. Now I’m getting an “Oops” message in Admin section.

  • When I disable “UserCountry” that errors goes away. Only to get an “Oops” message for “Visitor Map”. So It looks like it’s an issue with Geolocation. The Geolocation menu link gives a " A fatal error occurred".

  • The “DBIP-City.mmdb” file was updated on July 5, 2022.

I have another Matomo instance run 4.7.1 on RHEL 7 and same “DBIP-City.mmdb” file. There are no issues with this install.

Log message when picking the Geolocation menu

ERROR Piwik\FrontController[2022-07-15 20:52:10 UTC] [dccc9] Uncaught exception: Error: Class 'Piwik\Plugins\Provider\Provider' not found in /var/www/test-matomo/plugins/UserCountry/LocationProvider/DefaultProvider.php:78
ERROR Piwik\FrontController[2022-07-15 20:52:10 UTC] [dccc9] Stack trace:
ERROR Piwik\FrontController[2022-07-15 20:52:10 UTC] [dccc9] #0 /var/www/test-matomo/plugins/UserCountry/LocationProvider/DefaultProvider.php(43): Piwik\Plugins\UserCountry\LocationProvider\DefaultProvider->getCountryUsingProviderExtensionIfAvailable('10.223.92.212')
ERROR Piwik\FrontController[2022-07-15 20:52:10 UTC] [dccc9] #1 /var/www/test-matomo/plugins/UserCountry/LocationProvider.php(301): Piwik\Plugins\UserCountry\LocationProvider\DefaultProvider->getLocation(Array)
ERROR Piwik\FrontController[2022-07-15 20:52:10 UTC] [dccc9] #2 /var/www/test-matomo/plugins/UserCountry/Controller.php(42): Piwik\Plugins\UserCountry\LocationProvider::getAllProviderInfo('<br/>', true)
ERROR Piwik\FrontController[2022-07-15 20:52:10 UTC] [dccc9] #3 [internal function]: Piwik\Plugins\UserCountry\Controller->adminIndex()
ERROR Piwik\FrontController[2022-07-15 20:52:10 UTC] [dccc9] #4 /var/www/test-matomo/core/FrontController.php(631): call_user_func_array(Array, Array)
ERROR Piwik\FrontController[2022-07-15 20:52:10 UTC] [dccc9] #5 /var/www/test-matomo/core/FrontController.php(169): Piwik\FrontController->doDispatch('UserCountry', 'adminIndex', Array)
ERROR Piwik\FrontController[2022-07-15 20:52:10 UTC] [dccc9] #6 /var/www/test-matomo/core/dispatch.php(32): Piwik\FrontController->dispatch()
ERROR Piwik\FrontController[2022-07-15 20:52:10 UTC] [dccc9] #7 /var/www/test-matomo/index.php(25): require_once('/var/www/tes...')
ERROR Piwik\FrontController[2022-07-15 20:52:10 UTC] [dccc9] #8 {main}

Log when entering Admin section

ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] Uncaught exception: Error: Class 'Piwik\Plugins\Provider\Provider' not found in /var/www/test-matomo/plugins/UserCountry/LocationProvider/DefaultProvider.php:78
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] Stack trace:
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #0 /var/www/test-matomo/plugins/UserCountry/LocationProvider/DefaultProvider.php(43): Piwik\Plugins\UserCountry\LocationProvider\DefaultProvider->getCountryUsingProviderExtensionIfAvailable('10.223.92.212')
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #1 /var/www/test-matomo/plugins/UserCountry/LocationProvider.php(301): Piwik\Plugins\UserCountry\LocationProvider\DefaultProvider->getLocation(Array)
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #2 /var/www/test-matomo/plugins/UserCountry/Diagnostic/GeolocationDiagnostic.php(43): Piwik\Plugins\UserCountry\LocationProvider::getAllProviderInfo()
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #3 /var/www/test-matomo/plugins/Tour/Engagement/ChallengeConfigureGeolocation.php(43): Piwik\Plugins\UserCountry\Diagnostic\GeolocationDiagnostic->execute()
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #4 /var/www/test-matomo/plugins/Tour/API.php(55): Piwik\Plugins\Tour\Engagement\ChallengeConfigureGeolocation->isCompleted()
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #5 [internal function]: Piwik\Plugins\Tour\API->getChallenges()
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #6 /var/www/test-matomo/core/API/Proxy.php(244): call_user_func_array(Array, Array)
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #7 /var/www/test-matomo/core/Context.php(28): Piwik\API\Proxy->Piwik\API\{closure}()
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #8 /var/www/test-matomo/core/API/Proxy.php(335): Piwik\Context::executeWithQueryParameters(Array, Object(Closure))
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #9 /var/www/test-matomo/core/API/Request.php(266): Piwik\API\Proxy->call('\\Piwik\\Plugins\\...', 'getChallenges', Array)
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #10 /var/www/test-matomo/core/API/Request.php(559): Piwik\API\Request->process()
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #11 /var/www/test-matomo/plugins/Tour/Widgets/GetEngagement.php(54): Piwik\API\Request::processRequest('Tour.getChallen...', Array, Array)
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #12 /var/www/test-matomo/plugins/CoreHome/Controller.php(93): Piwik\Plugins\Tour\Widgets\GetEngagement->render()
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #13 [internal function]: Piwik\Plugins\CoreHome\Controller->renderWidget(Object(Piwik\Plugins\Tour\Widgets\GetEngagement))
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #14 /var/www/test-matomo/core/FrontController.php(631): call_user_func_array(Array, Array)
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #15 /var/www/test-matomo/core/FrontController.php(169): Piwik\FrontController->doDispatch('Tour', 'getEngagement', Array)
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #16 /var/www/test-matomo/core/dispatch.php(32): Piwik\FrontController->dispatch()
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #17 /var/www/test-matomo/index.php(25): require_once('/var/www/tes...')
ERROR Piwik\FrontController[2022-07-15 20:43:33 UTC] [e73a8] #18 {main}

Hi,

same problem here under version 4.11
And there’s no more tracking available

In the log :

[13-Oct-2022 08:01:58 UTC] PHP Fatal error:  Uncaught Error: Class "Piwik\Plugins\Provider\Provider" not found in D:\Inetpub\wwwroot\matomo\plugins\UserCountry\LocationProvider\DefaultProvider.php:78
Stack trace:
#0 D:\Inetpub\wwwroot\matomo\plugins\UserCountry\LocationProvider\DefaultProvider.php(43): Piwik\Plugins\UserCountry\LocationProvider\DefaultProvider->getCountryUsingProviderExtensionIfAvailable()
#1 D:\Inetpub\wwwroot\matomo\plugins\UserCountry\VisitorGeolocator.php(146): Piwik\Plugins\UserCountry\LocationProvider\DefaultProvider->getLocation()
#2 D:\Inetpub\wwwroot\matomo\plugins\UserCountry\VisitorGeolocator.php(115): Piwik\Plugins\UserCountry\VisitorGeolocator->getLocationObject()
#3 D:\Inetpub\wwwroot\matomo\plugins\UserCountry\Columns\Base.php(55): Piwik\Plugins\UserCountry\VisitorGeolocator->getLocation()
#4 D:\Inetpub\wwwroot\matomo\plugins\UserCountry\Columns\City.php(43): Piwik\Plugins\UserCountry\Columns\Base->getLocationDetail()
#5 D:\Inetpub\wwwroot\matomo\core\Tracker\Visit.php(514): Piwik\Plugins\UserCountry\Columns\City->onNewVisit()
#6 D:\Inetpub\wwwroot\matomo\core\Tracker\Visit.php(317): Piwik\Tracker\Visit->triggerHookOnDimensions()
#7 D:\Inetpub\wwwroot\matomo\core\Tracker\Visit.php(210): Piwik\Tracker\Visit->handleNewVisit()
#8 D:\Inetpub\wwwroot\matomo\core\Tracker.php(172): Piwik\Tracker\Visit->handle()
#9 D:\Inetpub\wwwroot\matomo\core\Tracker\Handler.php(55): Piwik\Tracker->trackRequest()
#10 D:\Inetpub\wwwroot\matomo\core\Tracker.php(152): Piwik\Tracker\Handler->process()
#11 D:\Inetpub\wwwroot\matomo\core\Tracker.php(127): Piwik\Tracker->track()
#12 D:\Inetpub\wwwroot\matomo\piwik.php(73): Piwik\Tracker->main()
#13 D:\Inetpub\wwwroot\matomo\matomo.php(13): include('...')
#14 {main}
  thrown in D:\Inetpub\wwwroot\matomo\plugins\UserCountry\LocationProvider\DefaultProvider.php on line 78

Did you try to reinstall Matomo manually (from a zip file to be unzipped on all servers hosting your Matomo instance…)

I upgraded from 4.8 to 4.11
Here is the solution : https://github.com/matomo-org/matomo/issues/18505#issuecomment-995245279

Remove from config.ini.php
PluginsInstalled[] = "Provider"

2 Likes

Does it work also for you, @lezottt?