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)


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

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).

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.


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)


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.