You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2018-10-10 15:20:01

b3rtr6nd
Member
Registered: 2017-11-23
Posts: 14

migration OCS Inventory NG vers FusionInventory

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

#2 2018-10-17 17:50:19

b3rtr6nd
Member
Registered: 2017-11-23
Posts: 14

Re: migration OCS Inventory NG vers FusionInventory

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

#3 2018-10-17 18:04:48

b3rtr6nd
Member
Registered: 2017-11-23
Posts: 14

Re: migration OCS Inventory NG vers FusionInventory

PS : je n'ai pas les droits, ou je n'ai pas trouvé comment mettre le sujet en [Résolu]...

Offline

Board footer

Powered by FluxBB