Table of Contents |
---|
Wo finde ich die Log-Dateien von antony?
Die Log-Dateien von antony liegen im %LOCALAPPDATA% Verzeichnis des ausführenden Benutzers. Für das Lesen der Log-Dateien ist ein spezielles Programm notwendig. Eine Anleitung gibt es dafür hier Server Protokolle / Logs
Ich bekomme eine Fehlermeldung beim Start “Could not compile skeleton”
Diese Fehlermeldung tritt sporadisch auf und wird im Splash-Screen von antony angezeigt. Es gibt dafür folgende Lösungsansätze:
Für gewöhnlich kann dieses Problem durch Abmelden und erneutes Anmelden der Windows Sitzung behoben werden.
Dieses Problem reproduzierbar auf, wenn das System auf Englisch eingestellt ist. Das Problem ist, dass die lokalisierte Assembly ist und der generierte Skeleton-Code einen Syntax Fehler aufweist.
Workarround: Löschen der Datei “en/SCOM.Antony.EICP.resources.dll” im Programmverzeichnis
Das Problem ist dauerhaft gelöst ab antony >=
Status colour Yellow title 2.22.121
Der Benutzer sieht keine Dokumentenvorlagen im Kontakt, Tab Dokumente
Diese Fehlermeldung tritt auf wenn die rückwirkende Berechtigungen für das Modul Dokumente nicht ausgeführt wurde
Für gewöhnlich kann dieses Problem durch nachträgliche rückwirkende Berechtigung erledigt werden. Dazu im Administrator auf “Rückwirkende Berechtigungen”, Dokumente und als Zeitraum “Alle” auswählen
...
antony kann ein Update nur manuell installieren. Woran liegt das?
Es kann verschiedene Ursachen haben, wieso ein Update nicht automatisch installiert werden kann. Hier einige Punkte, welche geprüft werden können.
Ist das Setup zugreifbar?
antony prüft, ob an der im Administrator definierten Stelle ein Setup zu finden ist. Ist dies nicht der Fall, kann kein automatisches Update verfolgen. Die Einstellung ist zu finden im Administrator unter
Grundeinstellungen
1️⃣ und lautetRemote antony Updatepfad
2️⃣Ist der Pfad nicht zugreifbar, ist das Problem gefunden und kann gelöst werden
...
Ist das automatische Update auf dem Client aktiviert?
...
Das automatische Update kann pro Client deaktiviert werden. Standardmäßig ist diese Funktion aktiviert. Um dies zu prüfen, kann der Registierungsschlüssel unter HKCU\Software\SCOM\antony\installationAutoUpdateEnabled
verwendet werden. Steht dieser auf '1' ist das automatische Update aktiviert.
...
Was mache ich, wenn bei einer frischen Client-Installation auf einem neuen System das Setup beim registrieren der antonymapi.net.dll abbricht?
Bei einer neu installierten Windows(Server) fehlen in diesem Fall in der Regel Abhängigkeit. antony liefert diese mit und sie können wie folgt installiert werden:
Die Fehlermeldung nicht weg klicken, so dass der Rollback nicht durchgeführt wird
In den antony Installationsordner gehen und die scom.groupware.exe starten. Diese installiert dann auch die Abhängigkeiten
Installationsordner wieder verlassen und die Fehlermeldung des Installations-Setups bestätigen. Das löst den Rollback aus
Installation erneut starten. Mit vorhandenen Abhängigkeiten wird die .DLL nun erfolgreich registriert
Was mache ich, wenn sich bei einer frischen Client-Installation auf einem neuen System keine E-Mail öffnen lässt und in der Fehlermeldung etwas von “cefsharp.core.dll nicht gefunden” steht?
Das liegt an fehlenden Abhängigkeiten von CefSharp (das ist der Chromium Webbrowser). Die Abhängigkeiten können hier eingesehen und runter geladen werden:
https://cefsharp.github.io/
Vor allem die C++ Runtime und .NET Framework fehlen auf Windows-Servern nach Neuinstallation
Wo finde ich die Log-Dateien von antony?
Die Log-Dateien von antony liegen im %LOCALAPPDATA% Verzeichnis des ausführenden Benutzers. Für das Lesen der Log-Dateien ist ein spezielles Programm notwendig. Eine Anleitung gibt es dafür hier Server Protokolle / Logs
Ich bekomme eine Fehlermeldung beim Start “Could not compile skeleton”
Diese Fehlermeldung tritt sporadisch auf und wird im Splash-Screen von antony angezeigt. Es gibt dafür folgende Lösungsansätze:
Für gewöhnlich kann dieses Problem durch Abmelden und erneutes Anmelden der Windows Sitzung behoben werden.
Dieses Problem reproduzierbar auf, wenn das System auf Englisch eingestellt ist. Das Problem ist, dass die lokalisierte Assembly ist und der generierte Skeleton-Code einen Syntax Fehler aufweist.
Workarround: Löschen der Datei “en/SCOM.Antony.EICP.resources.dll” im Programmverzeichnis
Das Problem ist dauerhaft gelöst ab antony >=
Status colour Yellow title 2.22.121
Der Benutzer sieht keine Dokumentenvorlagen im Kontakt, Tab Dokumente
Diese Fehlermeldung tritt auf wenn die rückwirkende Berechtigungen für das Modul Dokumente nicht ausgeführt wurde
Für gewöhnlich kann dieses Problem durch nachträgliche rückwirkende Berechtigung erledigt werden. Dazu im Administrator auf “Rückwirkende Berechtigungen”, Dokumente und als Zeitraum “Alle” auswählen
...
antony kann ein Update nur manuell installieren. Woran liegt das?
Es kann verschiedene Ursachen haben, wieso ein Update nicht automatisch installiert werden kann. Hier einige Punkte, welche geprüft werden können.
Ist das Setup zugreifbar?
antony prüft, ob an der im Administrator definierten Stelle ein Setup zu finden ist. Ist dies nicht der Fall, kann kein automatisches Update verfolgen. Die Einstellung ist zu finden im Administrator unter
Grundeinstellungen
1️⃣ und lautetRemote antony Updatepfad
2️⃣Ist der Pfad nicht zugreifbar, ist das Problem gefunden und kann gelöst werden
...
Ist das automatische Update auf dem Client aktiviert?
Das automatische Update kann pro Client deaktiviert werden. Standardmäßig ist diese Funktion aktiviert. Um dies zu prüfen, kann der Registierungsschlüssel unter
HKCU\Software\SCOM\antony\installationAutoUpdateEnabled
verwendet werden. Steht dieser auf '1' ist das automatische Update aktiviert.Ist dieser auf 0, kann wie folgt vorgangen werden. Dafür im Administrator unter
Benutzerverwaltung > Arbeitsstationen
. Dort muss nun die Arbeitsstation herausgesucht werden. Verwendet wird der Name des PCs Wird diese gesetzt, muss der Client neugestartet werden. Der Wert in der Registrierung ändert sich anschließend
...
base:RebuildSearchIndex -addin 1
: Bau den Index für Kontakte aufbase:RebuildSearchIndex -addin 2
: Bau den Index für Anrufe aufbase:RebuildSearchIndex -addin 3
: Bau den Index für E-Mails aufbase:RebuildSearchIndex -
Info |
---|
Ab der Version
|
base:RebuildSearchIndex -addin 4
: Bau den Index für Kalender aufbase:RebuildSearchIndex -addin 14
: Bau den Index für Flexobjekte aufbase:RebuildSearchIndex -addin 80
: Bau den Index für Kommunikationen aufbase:RebuildSearchIndex -addin 10
: Bau den Index für Fax aufbase:RebuildSearchIndex -addin 8
: Bau den Index für Aufgaben auf
...
Das Hinzufügen des Benutzers kann über folgenden SQL Befehl erfolgen. Auch hier ist die BenutzerId auszufüllen.
Code Block | ||
---|---|---|
| ||
INSERT INTO eventstream_usermngt (timestamp, identifier, action, app, event_type, payload, user_id, user_name) SELECT utc_timestamp() as timestamp, LOWER(id) as identifier, "ImportedManually fromAdded by antonyLegacySupport" as action, "DbUp (AntonyIntegrationService)Navicat" as app, 2 as event_type, -- EventId = 0 = CustomFieldSetAdded => https://diegroupware.atlassian.net/wiki/spaces/DEV/pages/1066205202/Customfields CONCAT_WS ("", "{", CHAR(13), CHAR(10), ' "UserId":', id, ",", CHAR(13), CHAR(10), ' "Division":', '"', division, '"', ",",CHAR(13), CHAR(10), ' "UserName":', '"', username, '"', ",",CHAR(13), CHAR(10), ' "FirstName":', '"', firstname, '"', ",",CHAR(13), CHAR(10), ' "LastName":', '"', lastname, '"', ",",CHAR(13), CHAR(10), ' "Acronym":', '"', shortcut, '"', ",",CHAR(13), CHAR(10), ' "Mail":', '"', email, '"', ",",CHAR(13), CHAR(10), ' "Telephone":', '"', phone, '"', ",",CHAR(13), CHAR(10), ' "Comment":', '"', comment, '"', ",",CHAR(13), CHAR(10), ' "IsInvisible":', IF(invisible=0,false, true), ",",CHAR(13), CHAR(10), ' "Location":', '"', location, '"', ",",CHAR(13), CHAR(10), ' "Position":', '"', position, '"', ",",CHAR(13), CHAR(10), ' "ExternalTelephone":', '"', external_phone, '"', ",",CHAR(13), CHAR(10), ' "Fax":', '"', fax, '"', ",",CHAR(13), CHAR(10), "}") as payload, 0 as user_id, "DbUp" as user_name FROM user where id = <userId>), ' "Location":', '"', location, '"', ",",CHAR(13), CHAR(10), ' "Position":', '"', position, '"', ",",CHAR(13), CHAR(10), ' "ExternalTelephone":', '"', external_phone, '"', ",",CHAR(13), CHAR(10), ' "Fax":', '"', fax, '"', ",",CHAR(13), CHAR(10), "}") as payload, 0 as user_id, "Support" as user_name FROM user where id = <userId> |
Nachdem die Abfrage ausgeführt wurde, kann mit der ersten Abfrage das Ergebnis validiert werden. Anschließend muss noch dafür gesorgt werden, dass der Benutzer in die entsprechenden Benutzergruppen kommt. Dies sind ebenfalls separate Events mit der event_type = 5 (UserAddedToGroup
). Über folgenden SQL Befehl können diese Events erzeugt werden
Code Block |
---|
INSERT INTO eventstream_usermngt (timestamp, identifier, action, app, event_type, payload, user_id, user_name)
SELECT
utc_timestamp() as timestamp,
LOWER(user_id) as identifier,"Manually Added by Support" as action,
"Navicat" as app,
15 as event_type, -- EventId = 15 = UserAddedToGroup
CONCAT_WS("", "{", CHAR(13), CHAR(10),
' "UserId":', user_id, ",", CHAR(13), CHAR(10),
' "GroupId":', group_id, ",", CHAR(13), CHAR(10),
"}") as payload,
0 as user_id,
"Support" as user_name
FROM `user-group` WHERE `user-group`.user_id=<userId>
|
Ist hier nun der Eintrag vorhanden, dann kann der Benutzer im nächsten Schritt im Administrator aktiviert werden.
Was mache ich, wenn sich die Server nicht untereinander finden können?
Es kann vorkommen, dass sich die alten Legacy-Dienst (MainService, Pop3Service) untereinander nicht finden können, wenn diese z.B. auf unterschiedlichen Servern ausgeführt werden. Ein typisches Anwendungsbeispiel ist (bzw war) das Auslagern des Fax-Dienstes auf eine separate Hardware. Der Dienst versuchen sich über den EICP Multicast zu finden. Ist dies nicht erfolgreich, kann er nicht gestartet werden
Um das Problem zu lösen, kann ein (oder auch mehrere) feste Endpunkte konfiguriert werden, zu welchen sich der Dienst verbinden soll. Dieser muss in die “*.config.xml” Datei des Dienstes eingetragen werden. Diese befindet sich im Programm-Verzeichnis der Dienste im Unterordner “config”. Der übliche Pfad lautet:
Für den MainService: C:\Program Files (x86)\antony Systemhaus GmbH\antony - Die Services\configs\mainservice.settings.xml
Für alle anderen Dienste C:\Program Files (x86)\antony Systemhaus GmbH\antony - Die Services\configs\default.settings.xml
Um die feste Verbindung zu konfigurieren. muss folgender Eintrag vorgenommen werden.
Der hier gezeigte Endpunkt ist natürlich kundenspezifisch anzupassen!
Code Block |
---|
xml<?xml version="1.0" encoding ="utf-8"?>
<ls:LocalSettings xmlns:ls="http://www.scom-software.de/antony/localSettings">
<!-- ... Hier sind weitere Einträge -->
<ls:Array name="CW.StaticConnections">
<ls:Item>127.0.0.1:54333</ls:Item>
</ls:Array>
<!-- ... und auch noch mehr -->
</ls:LocalSettings> |
Nach Neustart wird diese Verbindung statisch versucht aufzubauen.
Es wird weiterhin zusätzlich per Multicast gesucht. Dieses Verhalten ist bei einer festen EICP Verbindung vermutlich nicht notwendig. Um es zu deaktivieren kann zusätzlich folgender Eintrag vorgenommen werden
Code Block |
---|
xml<?xml version="1.0" encoding ="utf-8"?>
<ls:LocalSettings xmlns:ls="http://www.scom-software.de/antony/localSettings">
<!-- ... Hier sind weitere Einträge -->
<ls:Item name="CW:DisableMulticastSearch">true</ls:Item>
<!-- ... und auch noch mehr -->
</ls:LocalSettings> |
Die Eventverarbeitung funktioniert nicht. Woran kann das liegen?
Viele neue Funktionen von antony basieren auf einem sogenannten EventStream, welcher die Änderungen am System wiederspiegeln. Diese werden im Hintergrund verarbeitet und wieder zur Anzeige geführt. Wenn hier Probleme auftreten, werden Änderungen unter Umständen nicht direkt angewandt. Beispielsweise können gesetzte Konfigurationen nicht wieder angezeigt werden, es können Termineinaldungen nicht geöffnet werden oder eine neue E-Mail kann in der globalen Suche nicht gefunden werden.
Wenn Events nicht verarbeitet werden können, dann kann das im AntonyHub unter “Eventverarbeitung” eingesehen werden. Dort ist zu sehen, dass es offene Events gibt, welche auch nach Warten nicht verarbeitet werden. (Siehe Bild).
...
Hier im Bild sind es einige ReadModels, welche ein Problem aufweisen. Die Fehlermeldung dazu wird hier bisher nicht angezeigt. Dafür muss in die Tabelle read_model_config
gewechselt werden. Diese enthält den Verarbeitungsstatus der einzelnen Events pro ReadModel und Bucket und sieht wie folgt aus.
...
In der Spalte “last_error” ist die Fehlermeldung zu sehen, welche Aufschluss über die Ursache geben kann.
Im konkreten Bild gibt es mehrere Einträge pro Bucket und ReadModel. Um diese zu entfernen kann folgender Befehl ausgeführt werden, um diese zu entfernen.
Code Block | ||
---|---|---|
| ||
DROP TEMPORARY TABLE IF EXISTS read_model_config_dub;
CREATE TEMPORARY TABLE read_model_config_dub
(
`id` int(11) NOT NULL
);
INSERT INTO read_model_config_dub select min(id) FROM read_model_config GROUP BY name, bucket;
DELETE FROM read_model_config WHERE
!(id in
(select id FROM read_model_config_dub GROUP BY name, bucket)
);
DROP TEMPORARY TABLE IF EXISTS read_model_config_dub; |