[SOLVED] New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

Moderator: crythias

Post Reply
amdkryn
OTRS expert
Posts: 187
Joined: 02 Oct 2012, 02:52
OTRS Version?: 5.0.27

[SOLVED] New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

Post by amdkryn »

In recent months I have noticed that the delay in the process of creating a new ticket via web interface. At the moment it takes about 18 seconds to link the user to the ticket on the screen http: //servidor/otrs/index.pl Action = AgentTicketPhone?. The slowness occurs when the user selected in the list (which is displayed without any delay).

Via AdminSupport there is no alert
SQL benchmark is great, even during test production (with 28 single agents), all of the tests listed as "Looks fine!"
Ticket :: SearchIndexModule is as StaticDB and has performed the "bin / otrs.RebuildFulltextIndex.pl"

Authentication is linked to AD which serves about 2000 employees, but we have five domain controllers and Config.pm I configured with IP to use only one of them (high performance, less used and is on the same network segment) and with "CacheTTL => 60 * 60 * 24". I seek some AD fields but I know that is not them that slows why they are displayed immediately but others called registration screen fields remain "locked" until it finishes loading "something".

I checked the DNS and within the server can resolve internal names and without any loss of packets. I do not use IPV6 in OTRS server or domain controller (AD).

Use more than one email account but as in so-called e-mail splash screen is only sent after the creation of named, dismissed this problem.

The dedicated server has 8 processors, with 9GB of RAM in high-performance virtualized VMWare. But the S.O is 32-bit for now.

Does anyone have any tips on how to improve the performance at this stage? Is there anything I can turn off?


Statistics:
Agents 87
Articles 397480
Articles per ticket (avg) 4.55
Customers with at least one ticket 3904
Groups 28
Install directory /opt/otrs
Months between first and last ticket 37.53
Operating system linux
Product OTRS 3.3.6
Roles 12
Tickets 87428
Tickets per month (avg) 2329.33

Apache/2.2.22
MySQL 5.5.25a
Active Directory: Windows Server 2008 R2
Google Chrome v47
Last edited by amdkryn on 09 Feb 2016, 14:16, edited 1 time in total.
OTRS version 5.0.27 (With ITSM), Operating System OpenSuse 12 with Mysql.

wurzel
OTRS guru
Posts: 3023
Joined: 08 Jul 2010, 22:25
OTRS Version?: 6.0.x

Re: New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

Post by wurzel »

Hi,

this seems to be DNS issues. Or maybe MX record issues?

if the dropdown appears fast, the caching works, and this is OK, I think.

Flo
OTRS 8 SILVER (Prod)
OTRS 8 auf Debian 10 (Test)
    ((OTRS)) Community Edition 6.0.x, LAMP LIVE auf Debian 10

    -- Ich beantworte keine Forums-Fragen PN - No PN please

    I won't answer to unfriendly users any more. A greeting and regards are just polite.

    amdkryn
    OTRS expert
    Posts: 187
    Joined: 02 Oct 2012, 02:52
    OTRS Version?: 5.0.27

    Re: New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

    Post by amdkryn »

    It has a production environment and other approval. The homologation environment has the same slow, even without any user or authenticated agent. I'm just using the fields below. My room has no forest and added two filters (AlwaysFilter):

    Excerpt from my configuration:

    CacheTTL => 60 * 60 * 24,
    Map => [
    [ 'UserSalutation', 'Title', 'title', 1, 0, 'var', '', 0 ],
    [ 'UserFirstname', 'Firstname', 'givenname', 1, 1, 'var', '', 0 ],
    [ 'UserLastname', 'Lastname', 'sn', 1, 1, 'var', '', 0 ],
    [ 'UserLogin', 'Username', 'sAMAccountName', 1, 1, 'var', '', 0 ],
    [ 'UserEmail', 'Email', 'mail', 1, 1, 'var', '', 0 ],
    [ 'UserCustomerID', 'CustomerID', 'mail', 0, 1, 'var', '', 0 ],
    [ 'UserPhone', 'Phone', 'telephonenumber', 1, 0, 'var', '', 0 ],
    [ 'UserAddress', 'Address', 'postaladdress', 1, 0, 'var', '', 0 ],
    [ 'UserComment', 'Comment', 'description', 1, 0, 'var', '', 0 ],
    [ 'UserState', 'RE', 'st', 1, 0, 'var', '', 0 ],
    ],
    };

    # In case you want to add always one filter to each ldap query, use
    # This option. and. g. AlwaysFilter => '(mail = *)' or AlwaysFilter => '(objectclass = user)'
    $ Self -> {'Customer AuthModule :: :: LDAP :: AlwaysFilter'} = '';

    # In case you want to add a suffix to each customer login name, Then
    # You can use this option. and. g. user just want to use user but
    # In your ldap directory exists user @ domain.
    $ Self -> {'Customer AuthModule :: :: LDAP :: UserSuffix'} = '@ myexample.com.br';


    The slowness occurs only once a day for each user. Is there any way to increase the cache time to decrease the searches in AD?
    OTRS version 5.0.27 (With ITSM), Operating System OpenSuse 12 with Mysql.

    amdkryn
    OTRS expert
    Posts: 187
    Joined: 02 Oct 2012, 02:52
    OTRS Version?: 5.0.27

    Re: New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

    Post by amdkryn »

    The MySQL should be OK.
    SQL benchmark response times are excellent:
    KEY VALUE TIME COMMENT Insert Time: 50000 7 s :-) Looks fine! Update Time: 50000 11 s :-) Looks fine! Select Time: 50000 9 s :-) Looks fine! Delete Time: 50000 9 s :-) Looks fine!

    DNS is working and Check MX Record is disabled
    OTRS version 5.0.27 (With ITSM), Operating System OpenSuse 12 with Mysql.

    amdkryn
    OTRS expert
    Posts: 187
    Joined: 02 Oct 2012, 02:52
    OTRS Version?: 5.0.27

    Re: New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

    Post by amdkryn »

    When I type a part of the user name appears on behalf of groups and computers, it is normal? May be the cause of slowness?
    OTRS version 5.0.27 (With ITSM), Operating System OpenSuse 12 with Mysql.

    wurzel
    OTRS guru
    Posts: 3023
    Joined: 08 Jul 2010, 22:25
    OTRS Version?: 6.0.x

    Re: New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

    Post by wurzel »

    Hi,

    this is strange. Do you have some search pre-fixes what could slow down this search? I do not see any issues here :(

    Flo
    OTRS 8 SILVER (Prod)
    OTRS 8 auf Debian 10 (Test)
      ((OTRS)) Community Edition 6.0.x, LAMP LIVE auf Debian 10

      -- Ich beantworte keine Forums-Fragen PN - No PN please

      I won't answer to unfriendly users any more. A greeting and regards are just polite.

      amdkryn
      OTRS expert
      Posts: 187
      Joined: 02 Oct 2012, 02:52
      OTRS Version?: 5.0.27

      Re: New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

      Post by amdkryn »

      Hi, the slowness occurs only when selecting the "customer user" during the opening of the ticket. Slowness does not occur in any other step. Do you know if there is any way to increase the cache time to decrease the searches in AD?

      I do not know what happens when I select the "customer user" at the opening of the ticket.
      OTRS version 5.0.27 (With ITSM), Operating System OpenSuse 12 with Mysql.

      EXG133
      OTRS expert
      Posts: 217
      Joined: 06 Aug 2012, 18:12
      OTRS Version?: 3.1.7 & 4.04

      Re: New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

      Post by EXG133 »

      Well you quoted the CacheTTL variable yourself. modify it to whatever you prefer. It's in seconds, the "60*60*24" is to visualise a whole day worth of seconds, 86400 seconds would work the same but is less recognisable.

      Set it to this for a week of cache:
      CacheTTL => 60 * 60 * 24 * 7,
      or if you prefer the number in seconds:
      CacheTTL => 604800,

      Imo this can only be a workaround, you should check on your LDAP what the actual query is and why it is slow.

      amdkryn
      OTRS expert
      Posts: 187
      Joined: 02 Oct 2012, 02:52
      OTRS Version?: 5.0.27

      Re: New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

      Post by amdkryn »

      I made the change in CacheTTL and I will follow in the coming days.
      In my approval environment is fast in this task and I did not change anything. I have compared the Config.pm files, ZZZAuto.pm and ZZZAAuto.pm. Also I exported the sysconfig and compared but has no difference as well.

      If I import all settings and database production environment for the homologation environment, the homologation environment is too slow.

      Any suggestions on what more can I compare?
      I exported the sysconfig and compared too, I am the same.
      OTRS version 5.0.27 (With ITSM), Operating System OpenSuse 12 with Mysql.

      amdkryn
      OTRS expert
      Posts: 187
      Joined: 02 Oct 2012, 02:52
      OTRS Version?: 5.0.27

      Re: New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

      Post by amdkryn »

      Added the contents of Config.pm file:

      # --
      # Kernel/Config.pm - Config file for OTRS kernel
      # Copyright (C) 2001-2011 OTRS AG, http://otrs.org/
      # --
      # $Id: Config.pm.dist,v 1.25 2011/09/16 10:58:28 mg Exp $
      # --
      # This software comes with ABSOLUTELY NO WARRANTY. For details, see
      # the enclosed file COPYING for license information (AGPL). If you
      # did not receive this file, see http://www.gnu.org/licenses/agpl.txt.
      # --
      # Note:
      #
      # -->> OTRS does have a lot of config settings. For more settings
      # (Notifications, Ticket::ViewAccelerator, Ticket::NumberGenerator,
      # LDAP, PostMaster, Session, Preferences, ...) see
      # Kernel/Config/Defaults.pm and copy your wanted lines into "this"
      # config file. This file will not be changed on update!
      #
      # --

      package Kernel::Config;

      use utf8;

      sub Load {
      my $Self = shift;
      # ---------------------------------------------------- #
      # ---------------------------------------------------- #
      # #
      # Start of your own config options!!! #
      # #
      # ---------------------------------------------------- #
      # ---------------------------------------------------- #

      # --------------------------------------------------- #
      # LogModule #
      # --------------------------------------------------- #
      # (log backend module)
      $Self->{LogModule} = 'Kernel::System::Log::SysLog';

      $Self->{'LogModule'} = 'Kernel::System::Log::File';

      # param for LogModule Kernel::System::Log::SysLog
      $Self->{'LogModule::SysLog::Facility'} = 'user';

      # param for LogModule Kernel::System::Log::SysLog
      # (Depends on you sys log system environment. 'unix' is default, on
      # solaris you may need to use 'stream'.)
      $Self->{'LogModule::SysLog::LogSock'} = 'unix';

      # param for LogModule Kernel::System::Log::SysLog
      # (if syslog can't work with utf-8, force the log
      # charset with this option, on other chars will be
      # replaces with ?)
      $Self->{'LogModule::SysLog::Charset'} = 'iso-8859-15';

      # $Self->{'LogModule::SysLog::Charset'} = 'utf-8';

      # param for LogModule Kernel::System::Log::File (required!)
      $Self->{'LogModule::LogFile'} = '/tmp/otrs.log';

      # param if the date (yyyy-mm) should be added as suffix to
      # logfile [0|1]
      $Self->{'LogModule::LogFile::Date'} = 1;

      # system log cache size for admin system log (default 32k)
      # $Self->{'LogSystemCacheSize'} = 32 * 1024;

      # ---------------------------------------------------- #
      # database settings #
      # ---------------------------------------------------- #
      # DatabaseHost
      # (The database host.)
      $Self->{'DatabaseHost'} = 'localhost';
      # Database
      # (The database name.)
      $Self->{'Database'} = 'otrs';
      # DatabaseUser
      # (The database user.)
      $Self->{'DatabaseUser'} = 'otrs';
      # DatabasePw
      # (The password of database user. You also can use bin/otrs.CryptPassword.pl
      # for crypted passwords.)
      $Self->{'DatabasePw'} = 'otrs';
      # DatabaseDSN
      # (The database DSN for MySQL ==> more: "man DBD::mysql")
      $Self->{DatabaseDSN} = "DBI:mysql:database=$Self->{Database};host=$Self->{DatabaseHost};";

      # (The database DSN for PostgreSQL ==> more: "man DBD::Pg")
      # if you want to use a local socket connection
      # $Self->{DatabaseDSN} = "DBI:Pg:dbname=$Self->{Database};";
      # if you want to use a tcpip connection
      # $Self->{DatabaseDSN} = "DBI:Pg:dbname=$Self->{Database};host=$Self->{DatabaseHost};";
      # if you have PostgresSQL 8.1 or earlier, activate the legacy driver with this line:
      # $Self->{DatabasePostgresqlBefore82} = 1;

      # ---------------------------------------------------- #
      # fs root directory
      # ---------------------------------------------------- #
      $Self->{Home} = '/opt/otrs';

      # ---------------------------------------------------- #
      # insert your own config settings "here" #
      # config settings taken from Kernel/Config/Defaults.pm #
      # ---------------------------------------------------- #
      # $Self->{SessionUseCookie} = 0;
      # $Self->{CheckMXRecord} = 0;

      # ---------------------------------------------------- #
      ######################### Customers Users #######################
      # CustomerUser # (customer user ldap backend and settings)

      $Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
      $Self->{'Customer::AuthModule::LDAP::Host'} = 'servsv2.domexample.local';
      $Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'dc=domexample,dc=local';
      $Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';

      # Check if the user is allowed to auth in a posixGroup
      # (e. g. user needs to be in a group xyz to use otrs)
      #####$Self->{'Customer::AuthModule::LDAP::GroupDN'} = 'cn=otrs_users,ou=_example_,dc=domexample,dc=local';
      #####$Self->{'Customer::AuthModule::LDAP::AccessAttr'} = 'memberUid';
      # for ldap posixGroups objectclass (just uid)
      #####$Self->{'Customer::AuthModule::LDAP::UserAttr'} = 'UID';
      # for non ldap posixGroups objectclass (full user dn)
      #$Self->{'Customer::AuthModule::LDAP::UserAttr'} = 'DN';

      # The following is valid but would only be necessary if the
      # anonymous user does NOT have permission to read from the LDAP tree

      $Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'CN=otrs,CN=Users,DC=domexample,DC=local';
      $Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'pass@example#';

      ####$Self->{'AuthModule::LDAP::SearchUserDN'} = 'CN=otrs,CN=Users,DC=domexample,DC=local';
      ####$Self->{'AuthModule::LDAP::SearchUserPw'} = 'pass@example#';


      # ---------------------------------------------------- #
      # OTRS Active Directory Integration Backed DB Customers #
      # ---------------------------------------------------- #

      $Self->{CustomerUser} = {
      Name => 'LDAP example',
      Module => 'Kernel::System::CustomerUser::LDAP',
      Params => {
      Host => 'servsv2.domexample.local',
      BaseDN => 'dc=domexample,dc=local',
      SSCOPE => 'sub',
      UserDN => 'CN=otrs,CN=Users,DC=domexample,DC=local',
      UserPw => 'pass@example#',
      AlwaysFilter => '',
      Params => {
      port => 389,
      timeout => 120,
      async => 0,
      version => 3,
      },
      },
      CustomerKey => 'sAMAccountName',
      CustomerID => 'mail',
      CustomerUserListFields => ['cn', 'mail'],
      CustomerUserSearchFields => ['sAMAccountName', 'cn', 'mail'],
      CustomerUserSearchListLimit => 5000,
      CustomerUserPostMasterSearchFields => ['mail'],
      CustomerUserNameFields => ['givenname', 'sn'],
      CustomerUserExcludePrimaryCustomerID => 0,
      AdminSetPreferences => 1,
      CacheTTL => 60 * 60 * 24 * 7,
      Map => [
      [ 'UserSalutation', 'Title', 'title', 1, 0, 'var', '', 0 ],
      [ 'UserFirstname', 'Firstname', 'givenname', 1, 1, 'var', '', 0 ],
      [ 'UserLastname', 'Lastname', 'sn', 1, 1, 'var', '', 0 ],
      [ 'UserLogin', 'Username', 'sAMAccountName', 1, 1, 'var', '', 0 ],
      [ 'UserEmail', 'Email', 'mail', 1, 1, 'var', '', 0 ],
      [ 'UserCustomerID', 'CustomerID', 'mail', 0, 1, 'var', '', 0 ],
      [ 'UserPhone', 'Phone', 'telephonenumber', 1, 0, 'var', '', 0 ],
      [ 'UserAddress', 'Address', 'postaladdress', 1, 0, 'var', '', 0 ],
      [ 'UserComment', 'Comment', 'description', 1, 0, 'var', '', 0 ],
      [ 'UserState', 'RE', 'st', 1, 0, 'var', '', 0 ],
      ],
      };


      # in case you want to add always one filter to each ldap query, use
      # this option. e. g. AlwaysFilter => '(mail=*)' or AlwaysFilter => '(objectclass=user)'
      $Self->{'Customer::AuthModule::LDAP::AlwaysFilter'} = '';

      # in case you want to add a suffix to each customer login name, then
      # you can use this option. e. g. user just want to use user but
      # in your ldap directory exists user@domain.
      #$Self->{'Customer::AuthModule::LDAP::UserSuffix'} = '@example.com.br';

      #################################################################
      ######################### END Customers Users ###################
      #################################################################

      ######################### Agents Users #######################
      # This is an example configuration for using an MS AD backend
      $Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';
      $Self->{'AuthModule::LDAP::Host'} = 'servsv2.domexample.local';
      $Self->{'AuthModule::LDAP::BaseDN'} = 'DC=domexample,DC=local';
      $Self->{'AuthModule::LDAP::UID'} = 'sAMAccountName';

      # Check if the user is allowed to auth in a posixGroup
      # (e. g. user needs to be in a group OTRS_Agents to use otrs)
      # Aqui vai o Grupo de usuários que poderao logar como agentes
      $Self->{'AuthModule::LDAP::GroupDN'} = 'CN=otrs_users,OU=_example_,DC=domexample,DC=local';
      $Self->{'AuthModule::LDAP::AccessAttr'} = 'member';
      $Self->{'AuthModule::LDAP::UserAttr'} = 'DN';

      # Bind credentials to log into AD
      $Self->{'AuthModule::LDAP::SearchUserDN'} = 'CN=otrs,CN=Users,DC=domexample,DC=local';
      $Self->{'AuthModule::LDAP::SearchUserPw'} = 'pass@example#';

      # in case you want to add always one filter to each ldap query, use
      # this option. e. g. AlwaysFilter => '(mail=*)' or AlwaysFilter => '(objectclass=user)'
      $Self->{'AuthModule::LDAP::AlwaysFilter'} = '';

      # in case you want to add a suffix to each login name, then
      # you can use this option. e. g. user just want to use user but
      # in your ldap directory exists user@domain.
      #$Self->{'AuthModule::LDAP::UserSuffix'} = '';

      # Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)
      $Self->{'AuthModule::LDAP::Params'} = {
      port => 389,
      timeout => 120,
      async => 0,
      version => 3,
      };

      # Now sync data with OTRS DB
      $Self->{'AuthSyncModule'} = 'Kernel::System::Auth::Sync::LDAP';
      $Self->{'AuthSyncModule::LDAP::Host'} = 'servsv2.domexample.local';
      $Self->{'AuthSyncModule::LDAP::BaseDN'} = 'DC=domexample,DC=local';
      $Self->{'AuthSyncModule::LDAP::UID'} = 'sAMAccountName';
      $Self->{'AuthSyncModule::LDAP::SearchUserDN'} = 'CN=otrs,CN=Users,DC=domexample,DC=local';
      $Self->{'AuthSyncModule::LDAP::SearchUserPw'} = 'pass@example#';

      $Self->{'AuthSyncModule::LDAP::UserSyncMap'} = {
      # DB -> LDAP
      UserFirstname => 'givenName',
      UserLastname => 'sn',
      UserEmail => 'mail',
      ###########################################################################
      UserPhone => 'telephonumber',
      ###########################################################################
      };

      # AuthSyncModule::LDAP::UserSyncInitialGroups
      # (sync following group with rw permission after initial create of first agent
      # login)
      $Self->{'AuthSyncModule::LDAP::UserSyncInitialGroups'} = [
      'users',
      ];
      #################################################################
      ######################### END Agents Users ######################
      #################################################################

      #Adicionado dia 21-08-2013 as 18:37
      # AuthSyncModule::LDAP::UserSyncRolesDefinition
      # (If "LDAP" was selected for AuthModule and you want to sync LDAP
      # groups to otrs roles, define the following.)
      $Self->{'AuthSyncModule::LDAP::AccessAttr'} = 'member';
      $Self->{'AuthSyncModule::LDAP::UserSyncRolesDefinition'} = {
      # AD/LDAP group
      'CN=otrs_helpdesk,OU=_example_,DC=domexample,DC=local' => {
      # OTRS role
      'Helpdesk' => 1,
      },
      'CN=otrs_administrador,OU=_example_,DC=domexample,DC=local' => {
      # OTRS role
      'Administrador OTRS' => 1,
      },
      'CN=otrs_telecom,OU=_example_,DC=domexample,DC=local' => {
      # OTRS role
      'Telecom' => 1,
      },
      'CN=otrs_pacs,OU=_example_,DC=domexample,DC=local' => {
      # OTRS role
      'PACS' => 1,
      },
      'CN=otrs_oncologia,OU=_example_,DC=domexample,DC=local' => {
      # OTRS role
      'Oncologia' => 1,
      },
      'CN=otrs_admlogins,OU=_example_,DC=domexample,DC=local' => {
      # OTRS role
      'Admlogins' => 1,
      },
      'CN=otrs_suporte,OU=_example_,DC=domexample,DC=local' => {
      # OTRS role
      'Suporte' => 1,
      },
      'CN=otrs_laboratorio,OU=_example_,DC=domexample,DC=local' => {
      # OTRS role
      'Laboratorio' => 1,
      },
      'CN=otrs_processos,OU=_example_,DC=domexample,DC=local' => {
      # OTRS role
      'Processos' => 1,
      },
      'CN=otrs_cidadejardim,OU=_example_,DC=domexample,DC=local' => {
      # OTRS role
      'Cidade Jardim' => 1,
      },
      'CN=otrs_tecmach,OU=_example_,DC=domexample,DC=local' => {
      # OTRS role
      'Tecmach' => 1,
      },
      };

      #Adicionado dia 21-08-2013 as 18:37
      # AuthSyncModule::LDAP::UserSyncRolesDefinition
      # # (If "LDAP" was selected for AuthModule and you want to sync LDAP
      # # groups to otrs roles, define the following.)
      # $Self->{'AuthSyncModule::LDAP::UserSyncRolesDefinition'} = {
      # # AD/LDAP group
      # 'CN=otrs_teste,CN=Users,DC=domexample,DC=local' => {
      # # OTRS role
      # 'Processos' => 1,
      # }
      # 'CN=OTRS_Queue1,OU=OTRS,DC=domain,DC=local' => {
      # 'OTRS_Queue1' => 1,
      # },
      # 'CN=OTRS_Queue2,OU=OTRS,DC=domain,DC=local' => {
      # 'OTRS_Queue2' => 1,
      # },
      # };


      # Autenticacion Multple: Segundo Nivel
      $Self->{'AuthModule2'} = 'Kernel::System::Auth::DB';
      $Self->{'AuthModule::DB::CryptType2'} = 'crypt';
      # ---------------------------------------------------- #
      # data inserted by installer #
      # ---------------------------------------------------- #
      # $DIBI$

      # ---------------------------------------------------- #
      # ---------------------------------------------------- #
      # #
      # End of your own config options!!! #
      # #
      # ---------------------------------------------------- #
      # ---------------------------------------------------- #
      }

      # ---------------------------------------------------- #
      # needed system stuff (don't edit this) #
      # ---------------------------------------------------- #
      use strict;
      use warnings;

      use vars qw(@ISA $VERSION);
      $VERSION = qw($Revision: 1.25 $)[1];

      use Kernel::Config::Defaults;
      push (@ISA, 'Kernel::Config::Defaults');

      # -----------------------------------------------------#


      #----------- KIX tsunami framework -----------
      # CustomPackageLibs ~#
      use lib "/opt/otrs/KIXCore";
      use lib "/opt/otrs/KIXCore";
      use lib "/opt/otrs/KIX4OTRS";
      use lib "/opt/otrs/KIX4OTRSITSMCore";
      use lib "/opt/otrs/KIX4OTRSITSMConfigManagement";
      use lib "/opt/otrs/KIX4OTRSITSMIncidentProblem";
      use lib "/opt/otrs/KIX4OTRSITSMChangeManagement";
      use lib "/opt/otrs/KIX4OTRSGeneralCatalog";
      # EO CustomPackageLibs ~#
      #----------- EO KIX tsunami framework -----------

      1;
      OTRS version 5.0.27 (With ITSM), Operating System OpenSuse 12 with Mysql.

      wurzel
      OTRS guru
      Posts: 3023
      Joined: 08 Jul 2010, 22:25
      OTRS Version?: 6.0.x

      Re: New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

      Post by wurzel »

      Hi,

      I do not see any wrong settings or something what might be an issue.


      As the OTRS Framework usually works fine, and some #----------- KIX tsunami framework -----------
      is installed - maybe this is one cause?

      I do not use KIX - so I can not give a correct answer here... but Tsunami sounds like a wave of destroying something...

      Flo
      OTRS 8 SILVER (Prod)
      OTRS 8 auf Debian 10 (Test)
        ((OTRS)) Community Edition 6.0.x, LAMP LIVE auf Debian 10

        -- Ich beantworte keine Forums-Fragen PN - No PN please

        I won't answer to unfriendly users any more. A greeting and regards are just polite.

        amdkryn
        OTRS expert
        Posts: 187
        Joined: 02 Oct 2012, 02:52
        OTRS Version?: 5.0.27

        Re: New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

        Post by amdkryn »

        I activated the Performance Log and the module KIXSidebarLinkedCIsAJAXHandler appears to be the slowest and coincides with the time that I booked the task that I quoted at the beginning of the post.

        In "KIX4OTRS-ITSM -> Frontend::Agent::ModuleRegistration" deactivated all modules to test run the Rebuild and DeleteCache, restarted the service and still slow.
        OTRS version 5.0.27 (With ITSM), Operating System OpenSuse 12 with Mysql.

        amdkryn
        OTRS expert
        Posts: 187
        Joined: 02 Oct 2012, 02:52
        OTRS Version?: 5.0.27

        Re: New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

        Post by amdkryn »

        I've tried several times to remove all the KIX but always occurs after removing several errors, as if not removed altogether. For example, within the ZZZAuto.pm continues with various entrances KIX even after removal.

        Worst thing I did was install this KIX4OTRS and no one helps you get rid of it.
        I have created an environment from scratch but I can not migrate queues, services, users permissions ...
        OTRS version 5.0.27 (With ITSM), Operating System OpenSuse 12 with Mysql.

        wurzel
        OTRS guru
        Posts: 3023
        Joined: 08 Jul 2010, 22:25
        OTRS Version?: 6.0.x

        Re: New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

        Post by wurzel »

        Hi,

        this sounds really bad :(
        You can not migrate data from one OTRS to a new one. Maybe you should ask for professional help?
        The problem(s) you are reporting (with or without Kix) is not typical. Maybe there is something really mis-configured :(

        Flo
        OTRS 8 SILVER (Prod)
        OTRS 8 auf Debian 10 (Test)
          ((OTRS)) Community Edition 6.0.x, LAMP LIVE auf Debian 10

          -- Ich beantworte keine Forums-Fragen PN - No PN please

          I won't answer to unfriendly users any more. A greeting and regards are just polite.

          amdkryn
          OTRS expert
          Posts: 187
          Joined: 02 Oct 2012, 02:52
          OTRS Version?: 5.0.27

          Re: New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

          Post by amdkryn »

          Now I know that queues, services and other important information is in the database I finally got rid of the KIX4OTRS. I removed everything and now restored the bank'm reconfiguring since not want to use Config.pm and ZZZAuto.pm not cause problems.

          But I appreciate all the help.
          OTRS version 5.0.27 (With ITSM), Operating System OpenSuse 12 with Mysql.

          amdkryn
          OTRS expert
          Posts: 187
          Joined: 02 Oct 2012, 02:52
          OTRS Version?: 5.0.27

          Re: New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

          Post by amdkryn »

          Okay, I gave up and started all over again. Migrated only the database and installed OTRS and official packages, no KIX. It was the best thing I did. I not recommend using the KIX. I had a lot of work to get rid of it but now ok, set up everything from scratch, without Config.pm, ZZZAuto.pm or any other file. I took just var/article and var/log folder. There is still a warning regarding the Person.pm module but is not impacting.

          After formatting the time decreased dramatically, it only takes 2 seconds to bring the user data in the creation of a new ticket process.
          OTRS version 5.0.27 (With ITSM), Operating System OpenSuse 12 with Mysql.

          wurzel
          OTRS guru
          Posts: 3023
          Joined: 08 Jul 2010, 22:25
          OTRS Version?: 6.0.x

          Re: New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

          Post by wurzel »

          Hi

          nice to hear, that everything works better. :)
          amdkryn wrote: There is still a warning regarding the Person.pm module but is not impacting.
          This is a part of link type in database.

          You can search your ID of link type in Database in the link_relation and then



          DELETE FROM `database`.`link_relation` WHERE `link_relation`.`source_object_id` = x;

          Should work. But BACKUP first!

          Flo
          OTRS 8 SILVER (Prod)
          OTRS 8 auf Debian 10 (Test)
            ((OTRS)) Community Edition 6.0.x, LAMP LIVE auf Debian 10

            -- Ich beantworte keine Forums-Fragen PN - No PN please

            I won't answer to unfriendly users any more. A greeting and regards are just polite.

            amdkryn
            OTRS expert
            Posts: 187
            Joined: 02 Oct 2012, 02:52
            OTRS Version?: 5.0.27

            Re: [SOLVED] New Phone Ticket - Slow adding CustomerUser from AD (CustomerID)

            Post by amdkryn »

            Thank you for your help. I am using a clone of the production environment :)

            If I understand right, in the table "link_object" I found the ID 1 which corresponds to the "Person". Then I ran the query below and deleted all the entries.

            Code: Select all

            Select
              link_relation.source_object_id,
              link_relation.source_key,
              link_relation.target_object_id,
              link_relation.target_key,
              link_relation.type_id,
              link_relation.state_id,
              link_relation.create_time,
              link_relation.create_by
            From
              link_relation
            Where
              link_relation.source_object_id = 1
            Limit 0, 1000
            

            Code: Select all

            Tue Feb 9 11:50:42 2016 	error 	OTRS-CGI-10 	Module Kernel/System/LinkObject/Person.pm not in @INC (/opt/otrs/Custom /opt/otrs/Kernel/cpan-lib /opt/otrs/ /srv/www/perl-lib /usr/lib/perl5/site_perl/5.16.0/i586-linux-thread-multi /usr/lib/perl5/site_perl/5.16.0 /usr/lib/perl5/vendor_perl/5.16.0/i586-linux-thread-multi /usr/lib/perl5/vendor_perl/5.16.0 /usr/lib/perl5/5.16.0/i586-linux-thread-multi /usr/lib/perl5/5.16.0 /usr/lib/perl5/site_perl . /srv/www)
            Tue Feb 9 11:50:42 2016 	error 	OTRS-CGI-10 	Linktype 'Agent' does not exist!
            Tue Feb 9 11:50:42 2016 	error 	OTRS-CGI-10 	Linktype 'Customer' does not exist!
            Tue Feb 9 11:50:42 2016 	error 	OTRS-CGI-10 	Linktype 'Agent' does not exist!

            But it is still generating errors. I fished a lot and did not understand anything ... some say to recompile the Perl to remove the reference but do not know how.
            OTRS version 5.0.27 (With ITSM), Operating System OpenSuse 12 with Mysql.

            Post Reply