Grundlagen & Technisches
Meldungen an den Customer Support sollten so formuliert sein, dass diese ohne weitere Rückfragen bearbeitet werden können.
Meldungen sollten mindestens folgende Basisinformationen enthalten:
Vollständige Meldungen müssen weiterhin eine möglichst genaue Beschreibung der Anforderung/ des Problems beinhalten z.B.:
Wichtig
Bei Antworten zu bestehenden Tickets muss immer darauf geachtet werden, dass die korrekte Ticketnummer im folgdenden Format im Betreff verwendet wird:
[TicketNr. 300XXXXXX] - dies ermöglicht eine schnelle Zuordnung und Bearbeitung des Tickets.
Beispielfälle
Negativbeispiel:
Probleme:
Positivbeispiel:
Hilfreich:
Oftmals ist es sinnvoll das Benutzerlogfile anzuhängen (s. Registerkarte Benutzerlogdateien). Falls ein konkrete Fehler oder eine nicht nachvollziehbare Meldung erscheint sollte das "Meldungs-PDF" angehängt werden (s. Registerkarte Fehlermeldungen)
Meldungen können per Telefon, per Mail oder innerhalb von Sage b7 mit dem Programm ben020 erfasst werden.
a) Meldung per Telefon
Diese Variante eignet sich nur für sehr allgemeine einfache Anfragen. In den meisten Fällen ist die Komplexität in der Regel so hoch, dass ein Ticket erstellt werden sollte.
b) Meldung per E-Mail
Wenn eine Meldung per E-Mail erfolgt sollten obige Hinweise zum Inhalt und zu den Dateianhängen beachtet werden. Da der CSM Posteingang innerhalb der Supportzeiten ständig überwacht wird sollten insbesondere dringende Anfragen (mit entsprechender Kennzeichnung) auf diesem Weg gemeldet werden. Da so auch direkt umfangreiche Informationen mitgesendet werden können die eine sofortige Bearbeitung ohne zeitaufwändige Nachfragen ermöglichen können.
c) Meldung per ben020 - Erfassung CSM-Meldung
Mit dem Programm ben020, welches standardmäßig in Sage b7 enthalten ist, können E-Mails erzeugt werden bei denen viele Informationen, die sonst manuell zusammengetragen werden müssen, schon automatisch enthalten sind.
1 - Es kann entweder ein neues Ticket erstellt werden oder eine Ergänzung zu einem bestehenden Ticket gesendet werden. In letzterem Fall muss die Ticketnummer entsprechend angegeben werden. Das Feld Referenznummer kann frei belegt werden.
2 - Die CSM Mailadresse wird vorbelegt es können aber noch zusätzliche Kopien versendet werden
3 - Die Kontaktdaten werden vorbelegt, können aber falls nötig angepasst werden
4 - Der Benutzer wird mit dem aktuell angemeldeten Benutzer vorbelegt, die anderen Informationen sollten unter Beachtung der oben genannten Hinweise eingegeben werden
5 - Es können außerdem Anlagen (vom Server oder vom Client) angehängt werden
Mit Klick auf Verarbeiten wird ein Mail erstellt die dann noch kontrolliert oder ergänzt werden kann.
Zusätzlich zu den eingegebenen Daten werden automatisch noch die Kundennummer, das Release und das installierte Servicepack ausgelesen und in den Mailtext eingefügt.
Aus dem ben020 generierte E-Mail
Weiterhin wird eine ZIP Datei erstellt die verschiedene Logfiles, eine vollständige Liste aller gesetzten Parameter und die in der Maske angehängten Dateien enthält.
Wenn das ben020 aus einer Sage b7-Fehlermeldung heraus aufgerufen wurde ist außerdem das Meldungs-PDF automatisch enthalten.
Inhalt des angehängten ZIP-Ordners
In b7 tritt eine (Fehler)meldung auf, diese soll korrekt, verständlich und vollständig an das CSM verschickt werden.
Beispielfall:
Es wird das Programm rv200(0) aufgerufen und über die Auswahlliste nach einem Arbeitsgang gesucht. Das Programm meldet folgenden Fehler, im neuen Layout:
Im alten Layout:
Um nun den Fehler korrekt an das CSM zu melden und die effiziente Bearbeitung sicherzustellen, muss wie folgt vorgegangen werden:
1. Im neuen Layout auf die "Plus" Schaltfläche klicken (im alten Layout ist es ein Doppelpfeil):
2. Das Meldungsfenster wird daraufhin erweitert:
3. Nun können über die drei Schaltflächen unten folgende Aktionen ausgeführt werden:
a) Text in die Zwischenablage kopieren
b) PDF Datei mit der Meldung erzeugen
c) Das Programm "Erfassung CSM Meldung" (ben020) aufrufen und Fehlemeldung von dort aus verschicken
4. In der Regel sollte Variante c) genutzt werden (s. Registerkarte Meldungen an den Customer Support)
Falls das nicht möglich ist, kann aber mit Variante b) ein PDF erzeugt werden, welches dann an eine Mail angehängt und an das CSM verschickt werden kann.
Es soll das Benutzerlogfile eines bestimmten Benutzers angezeigt oder gespeichert werden.
Vorbereitung:
Es muss geklärt werden für welchen Benutzer und für welchen Tag das Logfile angezeigt werden soll.
Da sich das Vorgehen für die aktuellen Release (ab 2021.04) von denen bis R7.6 unterscheidet werden hier zwei Beispiele präsentiert.
Beispielfall A (vor 2021.04)
Im bv040 haben wir entdeckt, dass ein Job auf einen Fehler gelaufen ist, daher möchten wir das Benutzerlogfile des Benutzers noeth vom 27.12.2018 anzeigen und an das CSM verschicken.
1. ba001 aufrufen und Anzeigen (F8)
Der Pfadname D:\br75\application\dat\csm75to\log\2018-12-28\bbuehrer.log wird immer mit dem aktuellen Datum (amerikanisches Format) und Benutzer vorbelegt.
2. Gesucht wird jedoch nach dem Logfile des Benutzers noeth vom 27.12.2018, also ist folgendes einzutragen:
D:\br75\application\dat\csm75to\log\2018-12-27\noeth.log . Dies zeigt die Datei danach mit F8 an
3. Mit F11 kann die Datei in einem externen Editor geöffnet werden. In der Regel ist dies entweder das Standard Windows Notepad oder das Programm Notepad++.
4. Das geöffnete Textdokument kann nun abgespeichert und per Mail versendet werden
Beispielfall B (ab 2021.04)
Im bv040 haben wir entdeckt, dass ein Job auf einen Fehler gelaufen ist, daher möchten wir das Benutzerlogfile des Benutzers bbuehrer vom 23.08.2022 anzeigen und an das CSM verschicken.
1. ba001 aufrufen und Anzeigen (F8)
Der Pfadname D:\Sage\Sage_b7\7.c\br7c\application\dat\csm7cto\log\2022-08-23\bbuehrer_vil-srv-csc-3_8100_csm7c.log wird immer mit dem aktuellen Datum (amerikanisches Format) und Benutzer vorbelegt.
Die weiteren Regeln zur Benennung des Logfiles finden Sie unter der Registerkarte Technisches-Verzeichnisse
Da wir im Beispiel nach dem Logfile eines Hintergrundjobs (rh110) suchen welcher über den Spooler (s. Spalte Report lokal) gelaufen ist brauchen wir nicht das Benutzer Logfile sondern das Spooler Logfile.
2. Die Dateiauswahl im Pfadnamen öffnen mit STRG+F
3. Und wählen bbuehrer_vil-srv-csc-3_8110_csm7cspooler.log.
Hinweis: Hätten wir beispielsweise das Verhalten eines Dialogprogramms z.B. gv000 im Logfile haben wollen, hätten wir das andere Logfile, ohne Spooler, gebraucht
4. Mit F11 kann die Datei in einem externen Editor geöffnet werden. In der Regel ist dies entweder das Standard Windows Notepad oder das Programm Notepad++.
5. Das geöffnete Textdokument kann nun abgespeichert und per Mail versendet werden
Oftmals ist es zur Analyse eines Vorgangs erforderlich, dass eine erweiterte Protokolldatei erstellt wird.
Möglichkeiten zur Erzeugung von erweiterten Protokolldaten
Im folgenden werden die aktuell verfügbaren Methoden vorgestellt. Dabei wird jeweils erklärt was genau hinter der Methode steckt, wie man an die Ergebnisse kommt und in welchen Fällen diese Methode in der Regel verwendet wird.
1. Das Loglevel "Debug"
Was steckt dahinter?
Wie in der Registerkarte "Benutzerlogdateien" beschrieben wird grundsätzlich bei jedem Start von b7 eine Protokolldatei (Logdatei) erzeugt.
Während der Ausführung des Programms werden dabei Informationen in eine Textdatei geschrieben.
Auszug aus einer Logdatei
Damit die so entstehenden Dateien nicht zu umfangreich werden lässt sich konfigurieren wie detailliert die Protokollierung der Ereignisse erfolgen soll (Loglevel).
In b7 gibt es fünf Stufen, die niedrigste ist FATAL darauffolgend dann ERROR, WARNING, INFO und schließlich DEBUG mit den meisten Daten. standardmäßig ist INFO eingestellt.
Hätte man im obigen Beispiel den Level auf ERROR gesetzt, würden alle Zeilen mit INFO und WARNING nicht geschrieben. Würde man dagegen DEBUG einstellen würden entsprechend mehr Daten geschrieben.
Der DEBUG-Modus (von engl. de- (Präfix; dt. ent-, aus-) im Sinne von entfernen und engl. bug im Sinne von Programmfehler) enthält detaillierte Informationen die speziell für die Analyse bzw. Fehlersuche aufbereitet werden.
Debug Informationen zur Stücklistenauflösung
Wie erzeugt man diese Daten?
2. Der DBI-Trace
Was steckt dahinter?
Während der Ausführung von b7 findet eine intensive Kommunikation mit der Datenbank statt. Es werden ständig Daten gelesen, gelöscht, geändert oder neu angelegt.
Dazu werden sogenannte SQL-Befehle verwendet. Diese Befehle sind für den Benutzer in der Regel nicht sichtbar, können aber dabei helfen die Ursache für ein bestimmtes Programmverhalten zu identifizieren.
SQL Informationen im Logfile
Wie erzeugt man diese Daten?
a) Wenn der Loglevel nur einmalig bei der Ausführung eines bestimmten Programms aktiviert werden soll:
Es muss das Menü "Bearbeiten", dann das Untermenü "System" geöffnet werden.
Dort kann dann der Menüpunkt "DBI-Trace einschalten (ins Logfile" ausgewählt werden. Ab jetzt ist Debugmodus für den angemeldeten Benutzer aktiviert.
Jetzt sollte der Programmablauf der das gemeldete Phänomen erzeugt, durchgeführt werden. Im Anschluss sollte der DBI-Trace wieder ausgeschaltet werden.
Die erzeugten Daten befinden sich nun im Benutzerlogfile und können an das CSM gesendet werden. (s. auch Registerkarte: Benutzerlogdateien)
b) Wenn der Trace über einen längeren Zeitraum für einen bestimmten (Hintergrund)Benutzer oder für ein bestimmtes Programm aktiviert werden soll:
Im Programm bv240 - Maskeneigenschaften kann der DBI-Trace ganz spezifisch für ein Programm oder einen Benutzer gesetzt werden.
Es soll beispielsweise der DBI-Trace für die Maske "rv0000" und den Benutzer "bbuehrer" eingeschaltet werden, dann muss folgender Datensatz eingefügt werden:
Sobald der Datensatz gespeichert wurde ist der DBI-Trace aktiv und die zusätzlichen Meldungen werden in das (oder die) Benutzerlogfile(s) geschrieben.
Achtung: Wird der DBI-Trace-Modus auf diese Weise aktiviert dann können schnell sehr große Logdateien entstehen, da sehr viele SQL Befehle protokolliert werden. Sobald also der gewünschte Ablauf "eingefangen" wurde sollte der Eintrag im bv240 umgehend wieder entfernt werden.
Wann wird der DBI-Trace benötigt?
Es gibt viele mögliche Fälle in denen die genaue Kenntniss der abgesetzten SQL Befehle von Vorteil sind.
Wie auch beim DEBUG Modus hängt es immer vom konkreten Fall ab wie hilfreich die Aktivierung des DBI-Trace wirklich ist, denn letztlich werden hiermit nur die Ergebnisse der Programmlogik protokolliert nicht aber die Logik selbst.
So lässt sich beispielsweise zweifelsfrei feststellen ob ein bestimmter Datensatz angelegt, geändert oder gelöscht wurde aber es ist nicht dokumentiert warum.
In der Regel wird der DBI-Trace überall dort benötigt wo es darum geht das festzustellen welche Daten auf welche Art geändert wurden oder wie genau die Suchabfragen lauten. In letzterem Fall lässt sich daraus dann oft ermitteln warum z.B. gewisse Datensätze nicht angezeigt oder gefunden werden.
In der Regel wird das Basisverzeichnis wird im Normalfall mit folgender Struktur angelegt, die meisten Ordner lassen sich aber frei benennen, sodass die im folgenden genannten Bezeichnungen nur Beispiele sind:
...\SAGE\SAGE_b7\br7c\
Wobei im SAGE_b7 Verzeichnis jede seperate b7 Installation ein eigenes Verzeichnis bekommt, also kann es z.B. noch ein Verzeichnis br75_test für das Testsystem geben.
Dieser Ordner enthält meist folgende Unterordner
Interessant sind insbesondere das Application bzw. das Tomcats Verzeichnis
Die wichtigsten Verzeichnis (abgesehen vom eigentlichen Programmverzeichnis, welches im obigen Screenshot als "nordwest76" bezeichnet wurde) sind:
Enthält alle Details zur Tomcatinstallation.
Hin und wieder wird hier das "catalina" Log benötigt welches sich unterhalb des entsprechenden TomcatDienstes im Logs Ordner befindet, z.B.
\br7c\tomcats\tomcat_8130\logs
Das "dat" Verzeichnis enthält Daten die zur Laufzeit, also während der Arbeit mit b7 tagtäglich erstellt werden. Der konkrete Speicherort des DAT Verzeichnisses für eine b7 Installation kann im Programm ba901 → Servereinstellungen → DAT bzw. in der kundenspezifischen Installationsdokumentation nachgelesen werden.
Ein typisches DAT Verzeichnis enthält folgende Ordner (je nach Installation können auch noch weitere Ordner enthalten sein)
Hiervon sind dir Ordner log und print besonders interessant.
Es wird täglich ein Ordner, benannt mit dem Tagesdatum angelegt und in diesem Ordner werden dann Benutzerlogfiles gespeichert.
Inhalt eines Logverzeichnisses unter 2022.07
Den Ordner "rh110" gibt es erst ab R7.5 - er enthält alle Logmeldungen (nach Benutzer gruppiert) zu der Bedarfsrechnung/Terminierung
Seit dem Wechsel in das Continous Delivery Modell sind die Logfiles anders organisiert
Inhalt eines Ordners im Logverzeichnis (<2021.04)
Inhalt eines Ordners im Logverzeichnis (>=2021.04)
Die Benennung war früher "<User>.log" und zusätzlich jeweils ein Logfile für das bh010 und bh040.
Dies wurde nun geändert und ist nun folgendermaßen aufgebaut: "<User>_<server>_<port>_<db>_<spooler>" wobei der letzte Teil nur bei tatsächlichen Spoolerlogfiles angehängt wird und auch anders heißen kann z.B. "_spl", "_spool" o.ä.
Im obigen Beispiel wäre also: fack_vil-srv-csc-3_8110_csm7cspooler → user_lizenzserver_port_spooler
Man erkennt auch im obigen Beispiel das z.B. der User "ober" über die Entwicklungsumgebung zugegriffen hat - und dort gibt es keinen Lizenzserver also wird der Rechnername genutzt.
Wie viele Tage die Logfiles aufbewahrt werden hängt von der Einstellung des Parameter B_DEL_LOGDIR ab
Neben den Benutzerlogfiles befinden sich hier auch die Logfiles zu den Spoolern (bh010*.log, bh040*.log)
Benutzerlogfiles protokollieren die Aktionen jedes Benutzers (auch der Hintergrunddienste bzw. Crons) in b7 und können in vielerlei Fällen hilfreiche Informationen über die internen Abläufe liefern.
Der Detailgrad der Protokollierung (und damit die Menge der Meldungen bzw. die Größe des Logfiles) richtet sich nach verschiedenen Einstellungen innerhalb von b7.
standardmäßig enthalten die Logfiles aber nur oberflächliche Informationen, daher werden Logfiles, sofern erforderlich, explizit mit bestimmten erweiterten Einstellungen angefordert.
Aber auch ein Standardlogfile kann wichtige Details enthalten, daher ist es empfehlenswert zu jeder Meldung das entsprechende Logfile des Benutzers mitzuliefern. (weiterführende Details s. Kapitel Debug/Trace)
Das Printverzeichnis enthält zu jedem Druck der in b7 erfolgt die Jasper Druckdatei (*.jrprint) und die zugehörige *.xml Datei.
Je nachdem ob für den Druck auch ein PDF, beispielsweise als Mailanhang, erzeugt wurde wird auch diese hier abgelegt.
Die *.idx Dateien dienen als Basis für die Indexierung im Archivsystem (bj013).
Die Dateien werden solange aufbewahrt wie der Lifetime für diesen Druck definiert wurde und danach gelöscht. Typischerweise sind sie also 2-3 Tage lang verfügbar.
`Inhalt eines Printverzeichnisses
Die Zuordnung zwischen einem Druckvorgang und den Dateien im Printverzeichnis erfolgt über die "DateiNr" welche z.B. im Programm bv010 sichtbar ist.
Über das Funktionen Menü oder einen Rechtsklick kann mit "XML-Datei anzeigen" die zugeordnete XML Datei direkt angezeigt und über "Speichern unter" die jrprint Datei abgespeichert werden.