Uninitialized value $OrigSenderEmail TicketPendingCheck nach Update 6.0.45

Hilfe zu OTRS Problemen aller Art
Post Reply
nxmzk
Znuny newbie
Posts: 4
Joined: 23 Aug 2022, 11:03
Znuny Version: Znuny LTS
Real Name: Nickolas

Uninitialized value $OrigSenderEmail TicketPendingCheck nach Update 6.0.45

Post by nxmzk »

Hallo,

seit dem Update auf die Version Znuny LTS 6.0.45 taucht im Log immer wieder folgender Fehler auf:

Code: Select all

error 	OTRS-otrs.Console.pl-Maint::Ticket::PendingCheck-10 	There was an error executing Execute() in Kernel::System::Console::Command::Maint::Ticket::PendingCheck: Use of uninitialized value $OrigSenderEmail in pattern match (m//) at /server/otrs/srv/otrs-6.0.45/Kernel/Output/HTML/ArticleCheck/SMIME.pm line 415.
SMIME.pm Zeile 406-423

Code: Select all

                my $OrigFrom        = $ParserObjectOrig->GetParam( WHAT => 'From' );
                my $OrigFromEmail   = $ParserObjectOrig->GetEmailAddress( Email => $OrigFrom );
                my $OrigSender      = $ParserObjectOrig->GetParam( WHAT => 'Sender' );
                my $OrigSenderEmail = $ParserObjectOrig->GetEmailAddress( Email => $OrigSender );

                # compare sender email to signer email
                my $SignerSenderMatch = 0;
                SIGNER:
                for my $Signer ( @{ $SignCheck{Signers} } ) {
                    if (
                        $OrigFromEmail =~ m{\A \Q$Signer\E \z}xmsi
                        || $OrigSenderEmail =~ m{\A \Q$Signer\E \z}xmsi
                        )
                    {
                        $SignerSenderMatch = 1;
                        last SIGNER;
                    }
                }

Und vereinzelt auch dieser:

Code: Select all

Use of uninitialized value $OrigSenderEmail in concatenation (.) or string at /server/otrs/srv/otrs-6.0.45/Kernel/Output/HTML/ArticleCheck/SMIME.pm line 300.
SMIME.pm Zeile 295-303

Code: Select all

                # sender email does not match signing certificate!
                if ( !$SignerSenderMatch ) {
                    $SignCheck{Successful} = 0;
                    $SignCheck{Message} =~ s/successful/failed!/;
                    $SignCheck{Message} .= " (signed by "
                        . join( ' | ', @{ $SignCheck{Signers} } )
                        . ")"
                        . ", but neither $OrigFromEmail nor $OrigSenderEmail match the certificate address!";
                }
Bis auf diese zwei Fehler im Log scheint sich das System jedoch genauso wie vor dem Update zu verhalten.
Hat jemand eine Idee, wie sich die Fehler beheben lassen?
hkais
Znuny expert
Posts: 280
Joined: 16 Apr 2016, 08:55
Znuny Version: see in post
Real Name: Hans
Contact:

Re: Uninitialized value $OrigSenderEmail TicketPendingCheck nach Update 6.0.45

Post by hkais »

von welcher Version kommend (auf 6.0.45)?
Elected 2022-06 as an IT Governance Portal Expert. The portal for Znuny, OTRS and OTOBO users
root
Administrator
Posts: 3934
Joined: 18 Dec 2007, 12:23
Znuny Version: Znuny and Znuny LTS
Real Name: Roy Kaldung
Company: Znuny
Contact:

Re: Uninitialized value $OrigSenderEmail TicketPendingCheck nach Update 6.0.45

Post by root »

Hi,

Mal 'ne ganz blöde Frage: war der Daemon während des Updates aus oder wurde danach mal neu gestartet?

- Roy
Znuny and Znuny LTS running on CentOS / RHEL / Debian / SLES / MySQL / PostgreSQL / Oracle / OpenLDAP / Active Directory / SSO

Use a test system - always.

Do you need professional services? Check out https://www.znuny.com/

Do you want to contribute or want to know where it goes ?
nxmzk
Znuny newbie
Posts: 4
Joined: 23 Aug 2022, 11:03
Znuny Version: Znuny LTS
Real Name: Nickolas

Re: Uninitialized value $OrigSenderEmail TicketPendingCheck nach Update 6.0.45

Post by nxmzk »

Ich kam von der Version 6.0.40 und der Daemon wurde vor dem Update per otrs.Daemon.pl stop gestoppt und nach dem update wieder gestartet.
Johannes
Moderator
Posts: 391
Joined: 30 Jan 2008, 02:26
Znuny Version: All of them ^^
Real Name: Hannes
Company: Znuny|OTTERHUB

Re: Uninitialized value $OrigSenderEmail TicketPendingCheck nach Update 6.0.45

Post by Johannes »

Hi,
ich habe mir das angesehen. Wir haben dort etwas angepasst / aufgeräumt.
Wir sehen uns das an, vermutlich ist dabei ein Fehler passiert.

https://github.com/znuny/Znuny/commit/a ... 87bb23a6d1

Gruß
Johannes
Moderator
Posts: 391
Joined: 30 Jan 2008, 02:26
Znuny Version: All of them ^^
Real Name: Hannes
Company: Znuny|OTTERHUB

Re: Uninitialized value $OrigSenderEmail TicketPendingCheck nach Update 6.0.45

Post by Johannes »

Hallo Nickolas,

wir haben es etwas weiter eingrenzt.
https://github.com/znuny/Znuny/issues/59 wurde übernommen und damit der Check geändert /erweitert.
Kann es sein das es nicht bei allen S-Mime Mails passiert?
Ich vermute es sind nur Mails die keinen "Sender" haben als Feld in der Plain Mail bzw SMIME Mail haben.

Kannst Du das ggf. auf eine eingrenzen? Das würde helfen.

Gruß
nxmzk
Znuny newbie
Posts: 4
Joined: 23 Aug 2022, 11:03
Znuny Version: Znuny LTS
Real Name: Nickolas

Re: Uninitialized value $OrigSenderEmail TicketPendingCheck nach Update 6.0.45

Post by nxmzk »

Hey Johannes,

danke schonmal für deine Bemühungen.

Kann es sein das es nicht bei allen S-Mime Mails passiert?
Das kann ich nicht sagen, da ich nicht weiß welche Mails das ganze konkret verursachen, da die Logmessage auch nicht sagt an welcher Mail das Problem entstanden ist. Ich weiß nur, dass der Befehl otrs.Console.pl Maint::Ticket::PendingCheck den Fehler immer zweimal ausgibt, also betrifft es womöglich nur zwei Mails?

Kannst Du das ggf. auf eine eingrenzen? Das würde helfen.
Da bin ich mir nicht sicher aber ich habe mal versucht, auf Grund deiner Vermutung, die Mails herauszufiltern, die keinen Sender haben und deren Status auf Pending steht. Allerdings weiß ich nicht ganz, ob mir das gelungen ist und ob das weiterhilft. Evtl. kannst du mir sagen, wie ich das ganze am besten auf eine Mail eingrenzen kann.

Diese Abfrage

Code: Select all

SELECT tn AS Ticketnummer, article_data_mime.a_subject AS Betreff FROM ((ticket INNER JOIN article ON ticket.id = article.ticket_id) INNER JOIN article_data_mime ON article.id = article_data_mime.article_id) WHERE article_data_mime.a_from = '' AND ticket.ticket_state_id BETWEEN 6 AND 8
liefert mir 16 Ergebnisse, bei denen es sich allerdings um Notizen in Prozesstickets handelt.
nxmzk
Znuny newbie
Posts: 4
Joined: 23 Aug 2022, 11:03
Znuny Version: Znuny LTS
Real Name: Nickolas

Re: Uninitialized value $OrigSenderEmail TicketPendingCheck nach Update 6.0.45

Post by nxmzk »

Hey Johannes,

ich kann es mir nicht erklären aber der Fehler scheint verschwunden zu sein.
Der letzte Logeintrag mit dem Fehler liegt nun schon einige Stunden zurück und das manuelle Ausführen des Befehls otrs.Console.pl Maint::Ticket::PendingCheck schmeisst auch keinen Fehler mehr.

Auch unter otrs.Console.pl Maint::Daemon::Summary hat der "TicketPendingCheck" seinen Status auf "Success" geändert.

Trotzdem vielen Dank, Gruß
Nickolas
Johannes
Moderator
Posts: 391
Joined: 30 Jan 2008, 02:26
Znuny Version: All of them ^^
Real Name: Hannes
Company: Znuny|OTTERHUB

Re: Uninitialized value $OrigSenderEmail TicketPendingCheck nach Update 6.0.45

Post by Johannes »

Danke für das Feedback

ich vermute das die Tickets jetzt geschlossen sind.
Falls es wieder auftritt, hab ich noch eine Idee.
Wir warten aber mal so lang
khaed
Znuny newbie
Posts: 3
Joined: 16 Jan 2023, 11:10
Znuny Version: Znuny LTS 6.5.5
Real Name: Sebastian

Re: Uninitialized value $OrigSenderEmail TicketPendingCheck nach Update 6.0.45

Post by khaed »

Hallo,

wir haben hier praktisch das gleiche Problem...

Code: Select all

Use of uninitialized value $OrigSenderEmail in concatenation (.) or string at /opt/znuny-6.4.4/Kernel/Output/HTML/ArticleCheck/SMIME.pm line 300.
Wir setzen in unserer Organisation überall SMIME ein, so dass das Problem mittlerweile nahezu ununterbrochen existiert. Es ist korrekt, wenn das betreffende Ticket geschlossen wird, dann ist der Fehler plötzlich weg, doch es war mir noch nicht möglich entsprechende Tickets zu lokalisieren, so dass sich die Aussage nur auf eine Vermutung stützt. Ich vermute auch, dass der Sender in den Mails irgendwo unbefüllt ist, konnte aber auch diesbezüglich noch kein infrage kommendes Ticket finden.

Die SQL Abfrage...

Code: Select all

SELECT tn AS Ticketnummer, article_data_mime.a_subject AS Betreff FROM ((ticket INNER JOIN article ON ticket.id = article.ticket_id) INNER JOIN article_data_mime ON article.id = article_data_mime.article_id) WHERE article_data_mime.a_from = '' AND ticket.ticket_state_id BETWEEN 6 AND 8
...liefert auch keine Treffer, weshalb ich im Moment etwas überfragt bin, wie ich die lästigen Fehlermeldungen loswerde. Gerne stelle ich mich als Testkandidat zur weiteren Eingrenzung der Fehlerursache bereit.
Bananayuppie
Znuny newbie
Posts: 1
Joined: 20 Jan 2023, 12:12
Znuny Version: Znuny LTS 6.0.48
Real Name: Ewald

Re: Uninitialized value $OrigSenderEmail TicketPendingCheck nach Update 6.0.45

Post by Bananayuppie »

Johannes wrote: 24 Aug 2022, 13:49 Hallo Nickolas,

wir haben es etwas weiter eingrenzt.
https://github.com/znuny/Znuny/issues/59 wurde übernommen und damit der Check geändert /erweitert.
Kann es sein das es nicht bei allen S-Mime Mails passiert?
Ich vermute es sind nur Mails die keinen "Sender" haben als Feld in der Plain Mail bzw SMIME Mail haben.

Kannst Du das ggf. auf eine eingrenzen? Das würde helfen.

Gruß
Hallo Johannes,

bei uns tritt das Problem auch auf. Wir bekommen täglich um die 300 neue Tickets rein, dementsprechend gab es alle 10-15 min eine Email mit oben beschriebenen Fehlern.

Kann es sein das es nicht bei allen S-Mime Mails passiert?
Es passiert bei uns nicht bei allen Tickets, aber relativ häufig, da der Check nicht nur beim "AgentTicketZoom" durchgeführt wird, sondern auch beim "AgentTicketQueue" stattfindet.

Ich vermute es sind nur Mails die keinen "Sender" haben als Feld in der Plain Mail bzw SMIME Mail haben.
Mit deiner Vermutung liegst du richtig, durch einen Logeintrag unter dem Check in der SMIME.pm konnte ich den Fehler auf die entsprechenden Tickets/Artikel zurückführen.

Code: Select all

	       # debug OrigSenderEmail
               if ( !$OrigSenderEmail && !$OrigSender ) {
                       $Kernel::OM->Get('Kernel::System::Log')->Log(
                               Priority => 'notice',
                               Message => "[TicketID=$Param{Article}->{TicketID}][ArticleID=$Self->{ArticleID}] Could not extract OrigSenderEmail from OrigSender, OrigSender is empty! OrigFrom='$OrigFrom' OrigFromEmail='$OrigFromEmail' OrigSender='$OrigSender'."
                       );
               }
Das erzeugt zb. folgende Einträge(Namen und Emailadressen entfernt):

Code: Select all

│[Mon Jan 23 16:08:43 2023][Notice][Kernel::Output::HTML::ArticleCheck::SMIME::Check] [TicketID=1059940][ArticleID=3479888] Could not extract OrigSenderEmail from OrigSender, OrigSender is empty! OrigFrom='Name, Vorname <xxxxx@XXX.de>' OrigFromEmail='xxxxx@XXX.de' OrigSender=''.
│[Mon Jan 23 16:08:49 2023][Notice][Kernel::Output::HTML::ArticleCheck::SMIME::Check] [TicketID=1059940][ArticleID=3479888] Could not extract OrigSenderEmail from OrigSender, OrigSender is empty! OrigFrom='Name, Vorname <xxxxx@XXX.de>' OrigFromEmail='xxxxx@XXX.de' OrigSender=''.
│[Mon Jan 23 16:08:50 2023][Notice][Kernel::Output::HTML::ArticleCheck::SMIME::Check] [TicketID=1006436][ArticleID=3496087] Could not extract OrigSenderEmail from OrigSender, OrigSender is empty! OrigFrom='Name, Vorname <xxxxx@XXX.de>' OrigFromEmail='xxxxx@XXX.de' OrigSender=''.                                                                               │
│[Mon Jan 23 16:08:55 2023][Notice][Kernel::Output::HTML::ArticleCheck::SMIME::Check] [TicketID=1052486][ArticleID=3487559] Could not extract OrigSenderEmail from OrigSender, OrigSender is empty! OrigFrom='Name, Vorname <xxxxx@XXX.de>' OrigFromEmail='xxxxx@XXX.de' OrigSender=''.                                                                      │
│[Mon Jan 23 16:08:55 2023][Notice][Kernel::Output::HTML::ArticleCheck::SMIME::Check] [TicketID=1052486][ArticleID=3437836] Could not extract OrigSenderEmail from OrigSender, OrigSender is empty! OrigFrom='Name, Vorname <xxxxx@XXX.de>' OrigFromEmail='xxxxx@XXX.de' OrigSender=''.                                                                      │
│[Mon Jan 23 16:08:56 2023][Notice][Kernel::Output::HTML::ArticleCheck::SMIME::Check] [TicketID=1060742][ArticleID=3478383] Could not extract OrigSenderEmail from OrigSender, OrigSender is empty! OrigFrom='Name, Vorname <xxxxx@XXX.de>' OrigFromEmail='xxxxx@XXX.de' OrigSender=''.                                                                            │
│[Mon Jan 23 16:08:56 2023][Notice][Kernel::Output::HTML::ArticleCheck::SMIME::Check] [TicketID=1060742][ArticleID=3478106] Could not extract OrigSenderEmail from OrigSender, OrigSender is empty! OrigFrom='Name, Vorname <xxxxx@XXX.de>' OrigFromEmail='xxxxx@XXX.de' OrigSender=''.                                                                            │
│[Mon Jan 23 16:08:57 2023][Notice][Kernel::Output::HTML::ArticleCheck::SMIME::Check] [TicketID=1066199][ArticleID=3491273] Could not extract OrigSenderEmail from OrigSender, OrigSender is empty! OrigFrom='Name, Vorname <xxxxx@XXX.de>' OrigFromEmail='xxxxx@XXX.de' OrigSender=''.                                                                         │
│[Mon Jan 23 16:08:58 2023][Notice][Kernel::Output::HTML::ArticleCheck::SMIME::Check] [TicketID=1067046][ArticleID=3494620] Could not extract OrigSenderEmail from OrigSender, OrigSender is empty! OrigFrom='Name, Vorname <xxxxx@XXX.de>' OrigFromEmail='xxxxx@XXX.de' OrigSender=''.                                                                      │
│[Mon Jan 23 16:08:59 2023][Notice][Kernel::Output::HTML::ArticleCheck::SMIME::Check] [TicketID=1059940][ArticleID=3479888] Could not extract OrigSenderEmail from OrigSender, OrigSender is empty! OrigFrom='Name, Vorname <xxxxx@XXX.de>' OrigFromEmail='xxxxx@XXX.de' OrigSender=''.                                                                         │
│[Mon Jan 23 16:09:11 2023][Notice][Kernel::Output::HTML::ArticleCheck::SMIME::Check] [TicketID=1067005][ArticleID=3494431] Could not extract OrigSenderEmail from OrigSender, OrigSender is empty! OrigFrom='Name, Vorname <xxxxx@XXX.de>' OrigFromEmail='xxxxx@XXX.de' OrigSender=''.
Exzessiven Emailspam habe ich erstmal mit folgendem Eintrag umgangen:

Code: Select all

                my $OrigFrom        = $ParserObjectOrig->GetParam( WHAT => 'From' );
                my $OrigFromEmail   = $ParserObjectOrig->GetEmailAddress( Email => $OrigFrom );
                my $OrigSender      = $ParserObjectOrig->GetParam( WHAT => 'Sender' );
#                my $OrigSenderEmail = $ParserObjectOrig->GetEmailAddress( Email => $OrigSender );

                # initialize $OrigSenderEmail to avoid error mail
                my $OrigSenderEmail = '';
                if ($OrigSender){
                        $ParserObjectOrig->GetEmailAddress( Email => $OrigSender );
                }
Gerne kann ich noch weitere Tests durchführen und bei der Lösung behilflich sein.
Post Reply