You are not logged in.
Bonjour à tous,
J'utilise OCS et Fusion pour l'inventaire des PC.
Une partie du parc de PC était précédemment inventorié par OCS et maintenant par FusionInventory. Quand j'accède aux pages concernant ces PC, le temps d'affichage est beaucoup plus long et je n'est plus les boutons "Sauvegarder" et "Mettre à la corbeille".
Des erreurs PHP et SQL sont enregistrés dans les logs GLPI :
SQL
[2018-10-10 10:34:21] glpisqllog.ERROR: DBmysql::query() in /var/www/html/glpi/inc/dbmysql.class.php line 177
*** MySQL query error:
SQL: SELECT `hardware`.*,`accountinfo`.`TAG`
FROM `hardware`
INNER JOIN `accountinfo` ON (`hardware`.`id` = `accountinfo`.`HARDWARE_ID`)
WHERE `hardware`.`ID` = 1656
Error:
Backtrace :
...ins/ocsinventoryng/inc/ocsdbclient.class.php:77
plugins/ocsinventoryng/inc/ocsclient.class.php:296 PluginOcsinventoryngOcsDbClient->getComputerRule()
plugins/ocsinventoryng/hook.php:2057 PluginOcsinventoryngOcsClient->getOcsComputer()
: plugin_ocsinventoryng_ruleCollectionPrepareInputDataForProcess()
inc/plugin.class.php:1342 call_user_func()
inc/rulecollection.class.php:1623 Plugin::doOneHook()
inc/rulecollection.class.php:1449 RuleCollection->prepareInputDataForProcessWithPlugins()
plugins/ocsinventoryng/inc/hardware.class.php:152 RuleCollection->processAllRules()
plugins/ocsinventoryng/inc/ocslink.class.php:1183 PluginOcsinventoryngHardware::getRuleLockableFields()
plugins/ocsinventoryng/inc/ocslink.class.php:1143 PluginOcsinventoryngOcslink::getLockableFields()
plugins/ocsinventoryng/inc/ocslink.class.php:1204 PluginOcsinventoryngOcslink::getLocksForComputer()
plugins/ocsinventoryng/inc/ocslink.class.php:104 PluginOcsinventoryngOcslink::showLockIcon()
: PluginOcsinventoryngOcslink::showSimpleForItem()
inc/plugin.class.php:1271 call_user_func()
inc/computer.class.php:534 Plugin::doHook()
inc/commonglpi.class.php:478 Computer->showForm()
ajax/common.tabs.php:92 CommonGLPI::displayStandardTab()
{"user":"129@xxxx.xxxx.xxx","mem_usage":"0.000\", 9.36Mio)"}
PHP
[2018-10-10 10:34:21] glpiphplog.ERROR: Toolbox::userErrorHandlerNormal() in /var/www/html/glpi/inc/toolbox.class.php line 657
*** PHP Warning(2): DBmysql::query(): Couldn't fetch mysqli
Backtrace :
inc/dbmysql.class.php:174
...ins/ocsinventoryng/inc/ocsdbclient.class.php:77 DBmysql->query()
plugins/ocsinventoryng/inc/ocsclient.class.php:296 PluginOcsinventoryngOcsDbClient->getComputerRule()
plugins/ocsinventoryng/hook.php:2057 PluginOcsinventoryngOcsClient->getOcsComputer()
: plugin_ocsinventoryng_ruleCollectionPrepareInputDataForProcess()
inc/plugin.class.php:1342 call_user_func()
inc/rulecollection.class.php:1623 Plugin::doOneHook()
inc/rulecollection.class.php:1449 RuleCollection->prepareInputDataForProcessWithPlugins()
plugins/ocsinventoryng/inc/hardware.class.php:152 RuleCollection->processAllRules()
plugins/ocsinventoryng/inc/ocslink.class.php:1183 PluginOcsinventoryngHardware::getRuleLockableFields()
plugins/ocsinventoryng/inc/ocslink.class.php:1143 PluginOcsinventoryngOcslink::getLockableFields()
plugins/ocsinventoryng/inc/ocslink.class.php:1204 PluginOcsinventoryngOcslink::getLocksForComputer()
plugins/ocsinventoryng/inc/ocslink.class.php:104 PluginOcsinventoryngOcslink::showLockIcon()
: PluginOcsinventoryngOcslink::showSimpleForItem()
inc/plugin.class.php:1271 call_user_func()
inc/computer.class.php:534 Plugin::doHook()
inc/commonglpi.class.php:478 Computer->showForm()
ajax/common.tabs.php:92 CommonGLPI::displayStandardTab()
{"user":"129@xxxx.xxxx.xxx","mem_usage":"0.000\", 9.37Mio)"}
Tests
Si je désactive temporairement le plugin OCS, les messages d'erreur disparaissent et je peut accéder normalement aux pages du PC, j'ai bien les boutons...
J'ai cherché si il restait une relation entre les PC et OCS : la table "glpi_plugin_ocsinventoryng_ocslinks"
J'ai donc temporairement supprimer l'entrée dans cette table correspondant à un PC qui pose problème : résultat le PC s'affiche et pas de message d'erreur.
Questions
Est ce un bug ?
Est ce qu'il y a une façon propre et officiel de supprimer le lien entre OCS et un PC de l'inventaire ? (en gardant le PC)
Est ce que je peux généraliser ma correction ? (suppression des entrées voulues de la table "glpi_plugin_ocsinventoryng_ocslinks")
Merci !
Config
GLPI 9.3.1
OCS Inventory NG Version: 1.5.4 State: Enabled
FusionInventory Version: 9.3+1.1 State: Enabled
Offline
Bonjour à tous,
Donc finalement, 2 solutions :
soit utiliser le menu "Lien OCSNG" sur le ou les PC concerné(s) et supprimer le lien OCS...
soit depuis "outils" puis "OCSIventory NG" et onglet "inventaire" choisir "Nettoyage des liens GLPI / OCSNG" qui permet de faire de la suppression de lien en masse.
Attention, par contre la 2ème solution envoie tous les PC à la corbeille... Il faut donc aller les restaurer ensuite.(dommage que le choix de garder les PC ne soit pas proposé)
voilà !
Offline
PS : je n'ai pas les droits, ou je n'ai pas trouvé comment mettre le sujet en [Résolu]...
Offline