Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GLPI-Agent report data not integrated into GLPI #17838

Open
2 tasks
fbarbieu opened this issue Sep 11, 2024 · 11 comments
Open
2 tasks

GLPI-Agent report data not integrated into GLPI #17838

fbarbieu opened this issue Sep 11, 2024 · 11 comments

Comments

@fbarbieu
Copy link

fbarbieu commented Sep 11, 2024

Code of Conduct

  • I agree to follow this project's Code of Conduct

Is there an existing issue for this?

  • I have searched the existing issues

Version

10.0.6 / 10.0.16

Bug description

Hello,

I was using FusionInventory for client machine reports. It worked without any problems.
I replaced FusionInventory-Agent with GLPI-Agent, and disabled the FusionInventory plugin. Since then, the report data is not integrated into GLPI for several dozen machines (Windows, Debian, Kali).
On the machine page, in the GLPI-Agent section, the "Last inventory" date is updated par new GLPI-Agent reports.
However, "components", "softwares" ... are not updated.

I reproduce with a clone of my GLPI server, updated to V10.0.16, FusionInventory plugin disabled, deleted and cleaned.
I activated debug level for logs.

It seems surprising that a text value is used for the manufacturers_id field, which is an int(10) according to the description of the glpi_softwares table.
Can my problem be solved by fixing this error?

Good afternoon.
Kind regards,
Franck

Relevant log output

GLPI-Agent logs:
---
DEBUG: .../IO/Socket/SSL.pm:3060: free ctx 94075242626880 open=94075242626880 94075186406000
DEBUG: .../IO/Socket/SSL.pm:3064: free ctx 94075242626880 callback
DEBUG: .../IO/Socket/SSL.pm:3071: OK free ctx 94075242626880
[error] [http client] communication error: 500 Internal Server Error
DEBUG: .../IO/Socket/SSL.pm:3060: free ctx 94075186406000 open=94075186406000
DEBUG: .../IO/Socket/SSL.pm:3064: free ctx 94075186406000 callback
DEBUG: .../IO/Socket/SSL.pm:3071: OK free ctx 94075186406000
---

Apache logs:
---
[Wed Sep 11 15:43:04.505796 2024] [proxy_fcgi:error] [pid 53859] [client X.X.X.X:58565] AH01071: Got error 'PHP message: PHP Fatal error:  Incorrect integer value: 'LOGITECH' for column `glpidb`.`glpi_softwares`.`manufacturers_id` at row 1 in /var/www/glpi/src/DBmysql.php on line 1969'
[Wed Sep 11 15:47:54.460017 2024] [proxy_fcgi:error] [pid 53724] [client X.X.X.X:59470] AH01071: Got error 'PHP message: PHP Fatal error:  Out of range value for column 'manufacturers_id' at row 1 in /var/www/glpi/src/DBmysql.php on line 1969'
[Wed Sep 11 15:50:15.617868 2024] [proxy_fcgi:error] [pid 54260] [client X.X.X.X:63101] AH01071: Got error 'PHP message: PHP Fatal error:  Incorrect integer value: 'BROCADE' for column `glpidb`.`glpi_softwares`.`manufacturers_id` at row 1 in /var/www/glpi/src/DBmysql.php on line 1969'
[Wed Sep 11 15:52:38.592921 2024] [proxy_fcgi:error] [pid 54420] [client X.X.X.X:37290] AH01071: Got error 'PHP message: PHP Fatal error:  Out of range value for column 'manufacturers_id' at row 1 in /var/www/glpi/src/DBmysql.php on line 1969'
[Wed Sep 11 15:57:49.452604 2024] [proxy_fcgi:error] [pid 54665] [client X.X.X.X:62179] AH01071: Got error 'PHP message: PHP Fatal error:  Out of range value for column 'manufacturers_id' at row 1 in /var/www/glpi/src/DBmysql.php on line 1969'
---

Page URL

No response

Steps To reproduce

No response

Your GLPI setup information

GLPI 10.0.6
Debian 12 - PHP 8.1
Activated plugins Account 3.0.3 / Print to pdf 3.0.0
Unactivated plugins FusionInventory 10.0.6+1.1

GLPI 10.0.16
Debian 12 - PHP 8.2
Activated plugins Account 3.0.4 / Print to pdf 3.0.0

Anything else?

No response

@trasher
Copy link
Contributor

trasher commented Sep 11, 2024

Please provide an inventory file we can use to reproduce your issue on a fresh GLPI instance.

@fbarbieu
Copy link
Author

Hi Trasher,
The inventory files contain data that is classified as confidential to us (computer name, domain, networks...).
If I anonymize them, will that be okay? I would at least leave the software part intact.
Regards
Franck

@trasher
Copy link
Contributor

trasher commented Sep 12, 2024

Just make sure issue is reproducible with your file on a fresh install and that's OK; it's all we need.

@fbarbieu
Copy link
Author

inv.zip
Hello,
You will find 2 anonymized inventory files (Windows and Debian) in attached files.
Regards
Franck

@trasher
Copy link
Contributor

trasher commented Sep 16, 2024

The "window" file is not XML valid, and therefore cannot be imported.
I've been able to import the other one, and everything seems OK:
image

@fbarbieu
Copy link
Author

Hello,
For the Windows file, my bad, I had removed one character too many when anonymizing. The corrected file is attached.
windows_ano_v2.zip
For the Debian file, do you have any idea what is causing the error message I am getting on my end?
Have a good day.
Franck

@trasher
Copy link
Contributor

trasher commented Sep 16, 2024

Hello, For the Windows file, my bad, I had removed one character too many when anonymizing. The corrected file is attached. windows_ano_v2.zip

I dot no have time right now to check again.

For the Debian file, do you have any idea what is causing the error message I am getting on my end? Have a good day. Franck

Since I have no problem on my side, no idea. Certainly something kind of wrong in your existing database, hard to say.

@fbarbieu
Copy link
Author

For Windows inventories, it seems that dictionary rules on manufacturers are causing problems.

An import with "INVOKE DSI" as manufacturer does not pass with the following rule enabled:

  • Logical operator: "and" or "or"
  • Active: "yes"
  • Criteria: Manufacturer "contains" "Invoke"
  • Actions: Manufacturer "Assign" "INVOKE"

When a deactivate it, import works.
I have the same error with similar rules.

Franck

@fbarbieu
Copy link
Author

For Debian inventories, the error below persists:

[Mon Sep 16 18:00:09.872792 2024] [proxy_fcgi:error] [pid 295549] [client 192.168.0.63:55586] AH01071: Got error 'PHP message: PHP Fatal error: Out of range value for column 'manufacturers_id' at row 1 in /var/www/glpi/src/DBmysql.php on line 1969'

Franck

@trasher
Copy link
Contributor

trasher commented Sep 17, 2024

I did not say you do not have an error but I need a way to reproduce in order to fix.
There is probably something in your setup or existing database that cause the issue. Maybe jsut a bit of "clean" is needed, can't say.

@fbarbieu
Copy link
Author

Hello,

I have deactive manufacturers rules for manufacturers in errors message.
The following message no longer appears:
AH01071: Got error 'PHP message: PHP Fatal error: Incorrect integer value: 'BROCADE' for column glpidb.glpi_softwares.manufacturers_id at row 1 in /var/www/glpi/src/DBmysql.php on line 1969'

Only the following error still appears:
AH01071: Got error 'PHP message: PHP Fatal error: Out of range value for column 'manufacturers_id' at row 1 in /var/www/glpi/src/DBmysql.php on line 1969'
We have more than 3400 manufacturers in the glpi_manufacturers table of our GLPI.
In the tables descriptions, manufacturers_id is a "int(10) unsigned" (glpi_manufacturers, glpi_softwares...).
Could it be possible that a variable is set to an integer with too few characters?

Have a good day.
Franck

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants