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 Re: English support » Slow login page » 2019-04-15 15:04:57

LucaC

I found the offending issue within the inc/ticket.class.php under the "solution.rejected".
Then I commented the followinmg line in file inc/central.class.php

     if ($showticket) {

         if (Ticket::isAllowedStatus(Ticket::SOLVED, Ticket::CLOSED)) {
            Ticket::showCentralList(0, "toapprove", false);
         }

         Ticket::showCentralList(0, "survey", false);

         Ticket::showCentralList(0, "validation.rejected", false);
//         Ticket::showCentralList(0, "solution.rejected", false);
         Ticket::showCentralList(0, "requestbyself", false);
         Ticket::showCentralList(0, "observed", false);

         Ticket::showCentralList(0, "process", false);
         Ticket::showCentralList(0, "waiting", false);

         TicketTask::showCentralList(0, "todo", false);

      }

In my config solution are by default "accepted" and tickets go directly to CLOSE state, so there is no need to display such tickets.
Still not sure it's a problem with my config.. I'll open a bug in GIT with these notes.

#2 Re: English support » Slow login page » 2019-04-15 14:50:35

LucaC

Just a little update on the last message (ERROR 3065). Solved removing ONLY_FULL_GROUP_BY in sql_mode global option.
I found that GLPI "empties" sql_mode before connecting (inc/dbmysql.class.php  - function connect) so it won't receive this error.

So, this is not really an issue in GLPI nor in mysql installation.
Keep on searching on how to speed up the 2 queries above.

#3 Re: English support » Slow login page » 2019-04-15 14:05:31

LucaC

Just an update.
If I try to exec the query in mysql console, i receive this error

ERROR 3065 (HY000): Expression #1 of ORDER BY clause is not in SELECT list, references column 'glpi.glpi_tickets.date_mod' which is not in SELECT list; this is incompatible with DISTINCT

I've to remove the ORDER BY glpi_tickets.date_mod to have query running..

#4 English support » Slow login page » 2019-04-15 14:00:35

LucaC
Replies: 4

Hello,
recently updated to 9.4.2. After update, loading the front page takes 60 seconds.
Only front page has this issues, other pages load quickly..

Looking at mysql I found 2 queries that takes 30 seconds each to be executed.

SELECT DISTINCT `glpi_tickets`.`id`
                FROM `glpi_tickets`
                LEFT JOIN `glpi_tickets_users`
                     ON (`glpi_tickets`.`id` = `glpi_tickets_users`.`tickets_id`)               
			   LEFT JOIN `glpi_groups_tickets`
                     ON (`glpi_tickets`.`id` = `glpi_groups_tickets`.`tickets_id`) LEFT JOIN `glpi_itilsolutions`
                           ON (`glpi_itilsolutions`.`id` = (SELECT `last_solution`.`id`
                                    FROM `glpi_itilsolutions` as `last_solution`
                                    WHERE `last_solution`.`items_id` = `glpi_tickets`.`id`
                                    AND `last_solution`.`itemtype` = 'Ticket'
                                    ORDER BY `last_solution`.`id` DESC
                                    LIMIT 1))
                        WHERE  `glpi_tickets`.`is_deleted` = 0
                             AND ( (`glpi_tickets_users`.`users_id` = '455'
                            AND `glpi_tickets_users`.`type` = '2'))
                             AND `glpi_tickets`.`status` <> '6'
                             AND `glpi_itilsolutions`.`status` = '4'  ORDER BY `glpi_tickets`.`date_mod` DESC;
SELECT DISTINCT `glpi_tickets`.`id`
                FROM `glpi_tickets`
                LEFT JOIN `glpi_tickets_users`
                     ON (`glpi_tickets`.`id` = `glpi_tickets_users`.`tickets_id`)
                LEFT JOIN `glpi_groups_tickets`
                     ON (`glpi_tickets`.`id` = `glpi_groups_tickets`.`tickets_id`) LEFT JOIN `glpi_itilsolutions`
                           ON (`glpi_itilsolutions`.`id` = (SELECT `last_solution`.`id`
                                    FROM `glpi_itilsolutions` as `last_solution`
                                    WHERE `last_solution`.`items_id` = `glpi_tickets`.`id`
                                    AND `last_solution`.`itemtype` = 'Ticket'
                                    ORDER BY `last_solution`.`id` DESC
                                    LIMIT 1))
                        WHERE  `glpi_tickets`.`is_deleted` = 0
                             AND ( (`glpi_tickets_users`.`users_id` = '455'
                            AND `glpi_tickets_users`.`type` = '2'))
                             AND `glpi_tickets`.`status` <> '6'
                             AND `glpi_itilsolutions`.`status` = '4'  ORDER BY `glpi_tickets`.`date_mod` DESC LIMIT 0,30;

If I login with my user, I have the issue. If I login with built-in glpi admin user, page loads quickly (probably because that user has less than 10 tickets assigned...)
Don't know if this is related to my db (long time GLPI  install, since 2012) that need to be updated/rebuild.

Anyone out there experienced same behaviour?
Bye.

#5 English support » Unable to install 9.3/bugfixes branch » 2018-07-18 18:31:52

LucaC
Replies: 2

Hello,
using GLPI 9.3 from 7 years and recently upgraded to 9.3, I stumbled upon the "N/A" in solution bug.
So I decided to apply the bug fixes branch for 9.3

I downloaded the 9.3/bugfixes branch and applied extracted files to my config.
After the upgrade, I wasn't able to login to GLPI using integrated LDAP account. I faced this error

[:error] [pid 1118]  PHP Fatal error:  Uncaught Error: Call to undefined method DB::quoteField() in /srv/glpi/inc/user.class.php:1401\nStack trace:\n#0 /srv/glpi/inc/user.class.php(1598): User->getFromLDAPGroupVirtual

Am I missing somethin in doing upgrade? Is it correct to download the 9.3/bugfixes branch and apply extracted files or there are other ways to do it?
Or I hit another bug?
Thanks

#6 Re: Bugs GLPI (EN only) » [GLPI 9.2.1] URL Images using local path instead of relative path » 2017-12-11 13:19:55

LucaC

Hi,
Also the same issue here.
Ended up adding the following lines to GLPI config in Apache

Note: I installed GLPI under /srv/glpi so images URL is something like http://server/srv/glpi/... so I needed to remove th /srv/ part

alias /glpi/ /srv/glpi/

<Location /srv>
    RewriteEngine On
    RewriteRule ^(.*)/srv/glpi/(.*) /glpi/$2 [R]
</Location>

<Location /glpi>
..
..
</Location>

#7 Re: English support » Problem with Active Directory » 2017-11-16 22:36:40

LucaC

As far as I remember, the bind user is only used to retrieve AD users.
from your image it seems to me that you didn't put the full DN but just the username.
You need to use full user DN, something like CN=user,OU=solicia,dc=solicia,dc=fr (assuming your bind user is whithin the solicia OU).
To retrieve the DN, open Active Directory users and computers, go to View->Advanced and then open the user. Now you should have an "attribute tab" so you can copy & paste the value to avoid errors.

I suggest you create a domain guest user for such a task.
HTH

#8 Re: English support » Create ticket from helpdesk email » 2017-10-14 19:35:10

LucaC

Hi, not a step by step guide, but some suggests.
1) Your server should be an IMAP or POP3 (with or whitout SSL).
2) You need to configure a mail receiver . Inside the mail receiver you must configure the server type, the address and (of course) username and password to access the mailbox. In case of IMAP, you can also specify an IMAP folder to retrieve mail from.

After that, you have to check that the mail receiver task (within the "automatic actions" configuration) is enabled, then check how frequentrly the mailbox should be checked and finally how many mail retrieve for each check (I suggest using a small value, to protect yourself from spam).

HTH

#9 Re: English support » procedures to keep GLPI working ok? » 2017-09-28 22:53:00

LucaC

Simply MYSQLDUMP every day.
Never experienced such issues

#10 Re: English support » Automatic Tasks sometimes remains in "Running" Mode » 2017-09-28 22:46:56

LucaC

I faced the same issue some time ago. Since GLPI tasks are simple "batches" and not "daemons" I ended up creating a simple script that update the task status in db when tasks run for more than 1 hour.
I'm sure I've seen a specific GLPI task that unlocks cron jobs, but cannot cleary remember the details.
HTH

#11 Re: English support » SSO Auth problem » 2017-09-06 23:55:08

LucaC

Have you checked Apache logs?
If auth fails you should find some messages there.
Also check Windows Security log (both on local server and on AD DC) to verify user is successfully authenticated with NTLM.

#12 Re: English support » 2 questions: GLPI + Groups + Users » 2017-09-06 23:52:48

LucaC

It seems to me that errors are related to groups within the BuiltIn AD container.
I would change the LDAP connecto to filter out a different OU..

#13 Re: English support » Exchange » 2017-09-06 23:50:28

LucaC

We simply enabled IMAP and configured the mail receiver.
It works flawlessy.

#14 Re: English support » [closed] Creating a separate ticket queue » 2017-08-22 21:18:28

LucaC

Hi
1) Make sure the group is enabled for notification (option CAN BE NOTIFIED set to yes in the first group tab)
2) Ensure you have setup a notification (setup -> Notification-> Notifications) when opening a ticket. You should check the "new ticket" notifications and verify that "group in charge of the ticket" is listed in the recipiets option
HTH
Luca

#15 Re: English support » Single Sign On authentication » 2017-08-15 13:20:04

LucaC

Hi,
you need to configure Apache for (at least) NTLM or Kerberos.
Join the linux box to domain (if not already done) and then configure the mod_ntlm apache module. There are several examples on the net on how to setup NTLM on apache

Finally, configure GLPI to use the REMOTE_USER env var to get the username from underlying apache.
Ciao

#16 Re: English support » [Question] Automatic Action - LDAP Sync - Active Users - GLPI 9.1.4 » 2017-08-11 12:35:51

LucaC

Hello,
Just modify the LDAP filter. Using the userAccountControl attribute you can filter out disabled user which then will be disabled or deleted in glpi (based on your configuration).
IIRC the "default" LDAP already does this.

#17 Re: English support » Best practices for GLPI implementation » 2017-08-02 11:15:11

LucaC

Hello, here my reply after 5 years of usage (about 500 users, 500 computers and 40branch offices).

1) Entities should be used when you need to isolate items.
For example, you manage two different companies with same GLPI installation, so you want to keep them isolated each other. So I would (not sure of course!) keep IT management in the "root" entity and create two sub entities (companyA and CompanyB).
Then will inherit root uses into A and B

2) Now working as described for one of the IT group. Use assign rules to manage this

3) I would look into native reporting and additional reports plugin (just playing around with them and they are really powerful)

4) We do this sometimes.. Example: a user open a ticket and you realize that you have to escalate to the software house who built the application. In this example, I add a task to the ticket saying "ticket sent to XYZ. Waiting for their reply" - Then I set the ticket as "pending". THe user is notified that IT took care of the incident and that it has been escalated externally. Also you as technician can quickly see tickets currently in "pending" state.

5) Good question, I think ITIL is the answer. To simplify, we use tickets for every user's request. We use Problems for issues fired by our monitoring software (monitoring SHOULD warn us BEFORE incidents from user - this is at least what we hope!)

Bye

#18 Re: English support » Active Directory does not work as expected » 2017-08-02 10:53:21

LucaC

Hello,
that is basically my configuration (I also use SSO with NTLM - will move to kerberos shortly).
I'm not currently in office so will try to remember the config:
- Create the 3 profiles you need in GLPI (eg. Profile-BRGPIAD, Profile-BRGPITC, Profile-BRGPIUS) and set appropriate permission you want for each user category
- Create 3 groups in GLPI (eg. Group-BRGPIAD, Group-BRGPITC, Group-BRGPIUS). Link each GLPI Group to the AD Group (using the LDAP Directory Link Tab in group configuration). You need to  specify memberof as attribute and then write down the full DN of the AD Group. Remember that AD link uses group DN so if you change the group DN (i.e. you move the group in another OU or rename the group), you need to update thìis setting manually. Also keep the default "glpi" user enabled to be used when AD integration fails.

Now  associate users in each group with appropriate profile using RULES.
In RULES, go to Authorization assignement rules. Create 3 rules that will link each group to corresponding profile.

Using BRGPIAD as example:
- Criteria  the "Imported group from LDAP Directrory is Group-BRGPIAD.
- Actions: Profile Assign Profile.-BRGPIAD

Don't forget to enable the rule (first tab in rule configuration).
HTH

#19 Re: English support » Automatically re-enable user via ldap sync » 2017-06-12 23:08:10

LucaC

Hello,
I faced similar issues when working with LDAP.
If I remeber correctly, GLPI drops a user if it miss just a single LDAP sync. This could happen, as in your case, when a user leave and come back to the company but also  if the user is temporary locked out or disabled.
Basically, after a user is marked as "gone" from LDAP by GLPI, he/she will never get synced again.

I've implemented a couple of SQL scripts to overcome this limit.

The first script is launched BEFORE ldap_mass_sync and simply marks as present in LDAP users synced in last 60 days. So, if the user has been marked as deleted from LDAP (field is_deleted_ldap in glpi_users set to 1) BUT was synced (field date_sync)  in last 60 days, it gets marked as "present" in ldap (i.e. is_deleted_ldap is reset to 0). This will force the ldap_mass_sync to try syncing the user again.

Then ldap_mass_sync is executed . It works as expected, marking again as "deleted from ldap" users which it cannot sync anymore. Please note that the date_sync field (=date_last_sync) is updated ONLY if sync took place: it means that deleted users won't get the date_sync updated.

Finally, the last script simply "put in dustbin" GLPI users not synced  for more than 60 days.

In such a way, a user is really deleted from GLPI after 60 days of "no sync".
In my environment this is an acceptable value also because users in LDAP are first disabled and then dropped some time later.

HTH

#20 Re: English support » GLPI Authentication Only syncs the first LDAP Directory » 2017-04-18 20:33:35

LucaC

Hello,
I presume that testing from inside GLPI works.
Second point: did you double check attributes and OU path within the ID7? Pay attention to "not standard" chars in DN (maybe the two servers use different locales)?

#21 Re: English support » sso glpi » 2017-04-14 23:47:14

LucaC

Sure you registered the SPN for your server?

#22 Re: English support » Problems with images in email body. » 2017-03-29 21:12:31

LucaC

Hello,
I faced similar issue after upgrading to latest version.
Please have a look at http://forum.glpi-project.org/search.ph … r_id=36015

Bye

#23 Re: Utilisation GLPI » GLPI 0.90.1 Les images ne s'affichent pas dans les tickets » 2017-03-14 13:17:45

LucaC

Sorry for reply in English.
I did a workaround to bypass the problem.
To recap, it seems to me that inline images are loaded with wrong path when invoking mailgate using the CLI method.

My Environment:
GLPI 9.1.2 running on CentOS 7
Integrated NTLM authentication to Active Directory Domain
Using CLI method for all GLPI authomation

My Workaround:
1) Moved back the mailgate to GLPI run mode
2) Created a new cron task which invokes

   wget http://server_fqdn/glpi/front/cron.php -o /dev/null --user-agent="CUSTOM_USER_AGENT"

3) In my Apache configuration, added an IF condition so that request for cron.php coming from the user agent CUSTOM_USER_AGENT are not subject to NTLM authentication. Also, for such request set the field USERNAME (used by GLPI to grab the user) to "glpi"

 
<location /glpi>
  <if "%{HTTP_USER_AGENT} == 'CUSTOM_USER_AGENT' &&  %{REQUEST_URI} == '/glpi/front/cron.php'">
    # Request come from a specific User agent and for the cron.php file
    RewriteEngine On
    RewriteRule .* - [E=USERNAME:glpi]

  </if>

  <else>
    # Standard auth required
..... NTLM stuff .....

  </else>
........other options .......
</location>

I think the same result could be achieved by using API but up to now I didn't play with that feature.


I also tried to find the bug in GLPI code, but I wasn't unable to clearly follow the logic behing the mailgate (I'm a sysadmin not a programmer).

Hope to help somenone

#24 Re: English support » ERROR - Import monitor from OCS inventory » 2015-03-14 13:58:35

LucaC

I faced the same issue.
I think I solved it by enabling the COMMENT import in the plugin setting page for the specific OCS server.
After that change I was able to see linked monitors to my items.

#25 Plugin OCS NG (GLPI >0.84) » GLPI 0.85 Plugin » 2015-02-27 21:19:17

LucaC
Replies: 1

I would like to thank all development team for releasing the new plugin compatible with GLPI 0.85
Have a nice weekend

Board footer

Powered by FluxBB