INHALTSVERZEICHNIS


Welche Logfiles gibt es?


Tomcat (stout = ama2_tomcat-stdout.JJJJ-MM-TT.log und stderr = ama2_tomcat-stderr.JJJJ-MM-TT.log)

ACF (verschiedenste Logfiles von Komponenten wie Bondrucker, Hotelsoftware, IDEA usw.)

Sol (JJJJ-MM-TT-{#}_sol-log.txt)

Apache (error.log)

ATouch2 (JJJJ-MM-TT.log)

MySQL (mysql_error.log)

L3 Server (Amadeus3.log)



Wo sind sie zu finden?


Tomcat: ..\AmadeusII\tomcat8\logs

ACF: ..\AmadeusII\Amadeus\ACF\logs

Sol: ..\AmadeusII\Sol\SolService\logs

Apache: ..\AmadeusII\apache\logs

ATouch2: ..\AmadeusII\Amadeus\atouch2\logs

MySQL: ..\AmadeusII\mysql\data

L3 Server ..\AmadeusII\Amadeus\a360\logs





Was beinhalten die jeweiligen Logfiles?


Tomcat: Im Tomcat stdout-Log sind alle Eingaben eines Kellners aller Geräte (ATouch1+2, Orderman Sol+7+Leo) zu finden. Es beinhaltet außerdem, Informationen ob ein Bonausdruck stattgefunden hat, ob ein Drucker erreichbar war oder ob ein Schankkredit gesendet wurde. 


ACF: In den einzelnen ACF Logfiles kann zum Beispiel im entsprechenden Logfile geprüft werden, ob ein Zimmertransfer stattgefunden hat (Protel.JJJ-MM-TT.log), ob ein Schrankkredit verarbeitet wurde und was die Schankanlage zurück geliefert hat (z.B. GruberSchankLog.JJJJ-MM-TT.log), ob ein Peripheriegerät erreichbar war oder nicht (acfDeviceManager.JJJJ-MM-TT.log).


Das ACF-Log ist generell auf ein niedriges Log-Level eingestellt. Wird zur Fehleranalyse ein höheres Log-Level benötigt, so kann dies über die Logger.xml im Verzeichnis ACF eingestellt werden. Genauere Infos zur Einrichtung finden sich unter diesem Link: https://support.gastro-mis.de/a/solutions/articles/36000188163.


Sol: Im Sol-Log wird festgehalten, ob eine Verbindung zur Basisstation (Antenne) als auch zum ACF vorhanden ist. Zudem wird darin jede Synchronisation aller Geräte festgehalten und ob das Gerät nach dem Sync Einsatzfähig ist. Kellnereingaben die am Terminal vorgenommen werden (wie z.B. An-/Abmeldung, Funktionen auswählen, Tisch Öffnung/Schließung, Abrechnung, Bonierung etc).


Apache: Hier wird ein Beenden des Apache-Dienstes festgehalten und es finden sich zudem Fehler (Errors), sofern welche auftreten.


ATouch2: Darin werden Verbindungsabbrüche zum ACF und Ausnahmefehler (Exceptions) festgehalten.


MySQL: Im MySQL Error-Log finden sich Einträge, wenn eine Datenbank korrupt/defekt ist oder ein Fehler in der Konfiguration von MySQL vorhanden ist.


L3 Server: Im Amadeus3.log kann festgestellt werden, ob die Kommunikation mit LINA funktioniert. Wenn Fehler auftreten oder die Synchronisation nicht erfolgreich stattfindet, ist dies in diesem Logfile nachvollziehbar.




Logfile Beispiele


Tomcat

Wenn Ausdruck nicht stattgefunden hat

PRINTTHREAD - EXCEPTION *** --> null
java.lang.NullPointerException
at amadeus.branch.documents.sectiongenerators.common.ChainedArticles.<init>(ChainedArticles.java:102)
at amadeus.branch.documents.sectiongenerators.bon.BonDetailGenerator.getRawData(BonDetailGenerator.java:256)
at amadeus.branch.documents.sectiongenerators.bon.BonDetailGenerator.getSectionData(BonDetailGenerator.java:124)
at amadeus.branch.documents.impl.DocumentGeneratorImpl.getOutput(DocumentGeneratorImpl.java:284)
at amadeus.branch.booking.impl.SlipManagerImpl.handleOrderCharging(SlipManagerImpl.java:574)
at amadeus.branch.booking.impl.SlipManagerImpl.handleOrderCharging(SlipManagerImpl.java:271)
at amadeus.branch.booking.impl.PrintThread.run(PrintThread.java:726)
at amadeus.branch.booking.impl.BookingManagerImpl.finalizeBookingsForAll(BookingManagerImpl.java:2361)
at amadeus.branch.booking.impl.BookingManagerImpl.finalizeBookingsForAllTablesOfWaiterTerminal(BookingManagerImpl.java:2262)
at amadeus.biz.interpreter.impl.WaiterCommandHandler.initializeWaiter(WaiterCommandHandler.java:102)
at amadeus.biz.interpreter.impl.WaiterCommandHandler.handleCommand(WaiterCommandHandler.java:68)
at amadeus.biz.interpreter.impl.AmadeusInterpreter.interpret(AmadeusInterpreter.java:211)
at amadeus.biz.session.AsqlSession.process(AsqlSession.java:393)
at amadeus.biz.session.AsqlSession.process(AsqlSession.java:201)
at amadeus.asql.server.AsqlProtocol.run(AsqlProtocol.java:267)
BookingManager/PrintThread: Printed bons for 330 in 14ms


ACF

Webservice-Treiber kann nicht gestartet werden

19.01.2017 03:53:59 Application rennt in der Console
Waiting for client message...
java.lang.ClassNotFoundException: amadeus.driver.web.WebDriver
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at amadeus.asql.client.devicecoordinator.impl.DeviceDriverRegistry.load(
DeviceDriverRegistry.java:92)
at amadeus.asql.client.devicecoordinator.impl.AcfDevice.loadClass(AcfDev
ice.java:176)
at amadeus.asql.client.devicecoordinator.impl.DeviceCoordinatorImpl.addD
evice(DeviceCoordinatorImpl.java:198)
at amadeus.asql.client.impl.AcfClientManagerImpl.analyzeAccept(AcfClient
ManagerImpl.java:927)
at amadeus.asql.client.impl.AcfClientManagerImpl.start(AcfClientManagerI
mpl.java:631)
at amadeus.asql.client.impl.AcfClientManagerImpl.runIt(AcfClientManagerI
mpl.java:220)
at amadeus.asql.client.impl.AcfClientManagerImpl.main(AcfClientManagerIm
pl.java:409)
registering SOL 46015
Send to Server: set printer 400 version null


Sol

ACF Verbindung wurde getrennt

2017-06-19 14:32:40|Debug|14|[46015] AcfConnection --> stop;

2017-06-19 14:32:40|Error|14|[46015] AcfConnection In die Übertragungsverbindung können keine Daten geschrieben werden: Eine vorhandene Verbindung wurde vom Remotehost geschlossen.System.IO.IOException: In die Übertragungsverbindung können keine Daten geschrieben werden: Eine vorhandene Verbindung wurde vom Remotehost geschlossen. ---> System.Net.Sockets.SocketException: Eine vorhandene Verbindung wurde vom Remotehost geschlossen

bei System.Net.Sockets.Socket.Send(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)

bei System.Net.Sockets.NetworkStream.Write(Byte[] buffer, Int32 offset, Int32 size)

--- Ende der internen Ausnahmestapelüberwachung ---

bei System.Net.Sockets.NetworkStream.Write(Byte[] buffer, Int32 offset, Int32 size)

bei System.IO.StreamWriter.Flush(Boolean flushStream, Boolean flushEncoder)

bei System.IO.StreamWriter.Flush()

bei AcfConnection.AcfConnection.send(String command) in D:\GIT\amadeusdev\amadeus-ii\sol.exe\Ama2Sol\AcfConnection\AcfConnection\AcfConnection.cs:Zeile 123. bei System.Net.Sockets.NetworkStream.Write(Byte[] buffer, Int32 offset, Int32 size)

bei System.IO.StreamWriter.Flush(Boolean flushStream, Boolean flushEncoder)

bei System.IO.StreamWriter.Flush()

bei AcfConnection.AcfConnection.send(String command) in D:\GIT\amadeusdev\amadeus-ii\sol.exe\Ama2Sol\AcfConnection\AcfConnection\AcfConnection.cs:Zeile 123.


Apache

Apache wurde beendet:

[Wed Jun 14 08:00:17.209005 2017] [mpm_winnt:notice] [pid 3952:tid 672] AH00422: Parent: Received shutdown signal -- Shutting down the server.


ATouch2

ACF ist für die ATouch2 nicht erreichbar

2017-06-20 08:53:01.1237 ERROR ACF ping Exception: Ein Verbindungsversuch ist fehlgeschlagen, da die Gegenstelle nach einer bestimmten Zeitspanne nicht richtig reagiert hat, oder die hergestellte Verbindung war fehlerhaft, da der verbundene Host nicht reagiert hat 10.10.10.243:1410


Exception Beispiel

2017-06-10 13:02:58.7215 FATAL bei atouch2.acf.request(String asql) in C:\Dropbox\Projects\amadeus_kellner_interface\atouch2\acf.cs:Zeile 168.
bei atouch2.table.tablelist.opentablesplit(table source, table target) in C:\Dropbox\Projects\amadeus_kellner_interface\atouch2\table\tablelist.cs:Zeile 160.
bei atouch2_wpf.views.split.load_table_split(Boolean from_source) in C:\Dropbox\Projects\amadeus_kellner_interface\atouch2_wpf\views\split.xaml.cs:Zeile 42.
bei atouch2_wpf.views.split.<fast_pay>d__15.MoveNext() in C:\Dropbox\Projects\amadeus_kellner_interface\atouch2_wpf\views\split.xaml.cs:Zeile 382.
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
bei System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.<ThrowAsync>b__6_0(Object state)
bei System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
bei System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)


Loglevel anpassen

Um das Loglevel hochzusetzen müssen 2 Anpassungen in der "NLog.config"-Datei vorgenommen werden, welche im ATouch2-Verzeichnis zu finden ist.  


Für das erweiterte Logging muss das Loglevel in Zeile 28 und 29 auf "Trace" angepasst werden (siehe gelbe Markierung). 


Wird das erweiterte Logging nicht mehr benötigt, kann das Level wieder auf "Warn" und "Info" zurückgestellt werden (siehe gelbe Markierung).



MySQL

Meldung "Please use mysql_upgrade to fix this error." (Lösung (nur wenn diese Meldung erscheint!): db_cleanup.exe vom FTP aus dem Ordner 1.3.1 runterladen und in den Ordner ..\mysql\bin kopieren und ausführen).

2016-07-27 15:04:58 2188 [ERROR] Column count of mysql.threads is wrong. Expected 14, found 3. Created with MySQL 50525, now running 50619. Please use mysql_upgrade to fix this error.


Korrupte Datenbank können anhand des Textes "corruption in the InnoDB tablespace" festgestellt werden

2017-05-03 10:06:49 1ab8 InnoDB: Assertion failure in thread 6840 in file btr0sea.cc line 1380
InnoDB: Failing assertion: index->id == btr_page_get_index_id(page)
InnoDB: We intentionally generate a memory trap.
InnoDB: Submit a detailed bug report to http://bugs.mysql.com/.
InnoDB: If you get repeated assertion failures or crashes, even
InnoDB: immediately after the mysqld startup, there may be
InnoDB: corruption in the InnoDB tablespace. Please refer to
InnoDB: http://dev.mysql.com/doc/refman/5.6/en/forcing-innodb-recovery.html
InnoDB: about forcing recovery.



L3 Server

        2020-07-23 16:27:51.0621 .ctor - INFO: Server Startup

        2020-07-23 16:27:51.0972 .ctor - INFO: Version: 0.9.2.5

        2020-07-23 16:27:51.3288 OnStart - INFO: Grapevine gestartet

        2020-07-23 16:27:52.2689 OnStart - INFO: Datenbank verbunden: 5148 zcount: 1232

        2020-07-23 16:27:52.2689 UpdateDatabase - INFO: Beginne Datenbank-Update!

        2020-07-23 16:27:52.3312 UpdateDatabase - INFO: Starte Update 01.04.07

        2020-07-23 16:27:52.3312 ExecuteUpdate - INFO: Check ob Spalten erstellt werden müssen.

        2020-07-23 16:27:55.8259 ExecuteUpdate - INFO: Check beendet!

        2020-07-23 16:27:55.8344 UpdateDatabase - INFO: Fertig mit Update 01.04.07

        2020-07-23 16:27:55.8344 UpdateDatabase - INFO: Starte Update 01.04.08

        2020-07-23 16:27:55.9224 ExecuteUpdate - INFO: Check ob Spalten erstellt werden müssen.

        2020-07-23 16:27:55.9342 ExecuteUpdate - INFO: Check beendet!

        2020-07-23 16:27:55.9415 ExecuteUpdate - INFO: Check ob Kollationen angepasst werden müssen.

        2020-07-23 16:27:55.9415 ExecuteUpdate - INFO: Check beendet!

        2020-07-23 16:27:55.9594 UpdateDatabase - INFO: Fertig mit Update 01.04.08

        2020-07-23 16:27:56.0336 UpdateDatabase - INFO: Database update completed!

        2020-07-23 16:28:17.0950 OnStop - INFO: Dienst wird gestoppt!