Repository navigation
Administration Installation
This guide helps you to setup a SmartMonitoring Step by Step. After following this guide you will have a working SmartMonitoring with default functions enabled and a general purpose design.
This guide uses the default software stack, but you can exchange the used database and REST-API with any TreeQL compatible API. (Some functions may be limited then)
- Prequsits
- Install Payara Server Version 6 or higher
- Install postgres database Version 11 or higher
- Copy the release files contents to the docroot folder
- Open https://your-domain.org/SmartMonitoringFrontend
- You should see a message that installation is not completed yet
- Open https://your-domain.org/SmartMonitoringFrontend/sites/admin/setup.html
- Go trough the steps
########################## OLD VERSION BELOW ########################
Installieren Sie SmartMonitoringFrontend mit den folgenden Schritten:
- Installieren Sie zunächst das Backend, wie im SmartMonitoringBackend-Wiki beschrieben
- Laden Sie die aktuelle Version herunter (Repository-Verzeichnis: /versions)
- Entpacken Sie die ZIP-Datei und laden Sie die Dateien in ein Verzeichnis im docroot ihres Webservers.
- Rufen Sie die URL unter dem Sie die Dateien abgelegt haben über ihren Browser auf. (z.B. http://localhost:8080/SmartMonitoring)
- Konfigurieren Sie das SmartMonitoringFrontend
Damit die Objektliste immer die Objekte in ihrer hierarchischen Form korrekt anzeigt, wurde ein spezieller View entwickelt.
CREATE VIEW view_oo_hierarchy as WITH RECURSIVE hierarchy AS (
-- Basisschicht: Abfrage der obersten Elternobjekte (d.h. solche, die keine Eltern haben)
SELECT
o.*,
o.id AS root_id,
0 AS depth,
CAST(lpad(o.id::text, 10, '0') AS VARCHAR) AS path
FROM
tbl_observedobject o
WHERE
o.parent_id IS NULL
UNION ALL
-- Rekursive Schicht: Abfrage der Kinderobjekte auf Basis der vorherigen Ergebnismenge
SELECT
o.*,
h.root_id,
h.depth + 1 AS depth,
CONCAT(h.path, '>', lpad(o.id::text, 10, '0')) AS path
FROM
tbl_observedobject o
INNER JOIN
hierarchy h ON o.parent_id = h.id
)
SELECT * FROM hierarchy
ORDER BY root_id, path;
Nicht vergessen, die Berechtigung für den View zu setzen.
ALTER VIEW view_oo_hierarchy OWNER TO smartmonitoring_NAME;
Damit der View für nicht lokalisierte Objekte funktioniert, muss das nachfolgende Skript in der Datenbank ausgeführt werden:
CREATE VIEW view_oo_without_locations AS
WITH RECURSIVE hierarchy AS (
-- Basisschicht: Abfrage der obersten Elternobjekte (d.h. solche, die keine Eltern haben)
SELECT
o.*,
o.id AS root_id,
0 AS depth,
CAST(LPAD(o.id::text, 10, '0') AS VARCHAR) AS path
FROM
tbl_observedobject o
WHERE
o.parent_id IS NULL
UNION ALL
-- Rekursive Schicht: Abfrage der Kinderobjekte auf Basis der vorherigen Ergebnismenge
SELECT
o.*,
h.root_id,
h.depth + 1 AS depth,
CONCAT(h.path, '>', LPAD(o.id::text, 10, '0')) AS path
FROM
tbl_observedobject o
INNER JOIN
hierarchy h ON o.parent_id = h.id
)
SELECT
h.*
FROM hierarchy h
LEFT JOIN
tbl_location_join_oo ljo ON h.id = ljo.oo_id
WHERE
ljo.oo_id IS NULL
ORDER BY
h.root_id, h.path;
Anschließend muss noch die Berechtigung für den jeweiligen Datenbanknutzer gesetzt werden.
-
Stellen Sie sicher, dass eine PostgreSQL-Instanz läuft.
-
In einer leeren PostgreSQL Datenbank(Name: smartmonitoring__gewaesser2) das SQL-Script aus diesem Archiv ausführen.
-
Installieren Sie in Ihrer Domain die Abhängigkeiten gemäß der Anleitungen im Wiki:
- SmartData
- SmartFile
- SmartDataPorter
-
Legen Sie die Ordner SWAC und SWACtemplate aus diesem Archiv in den docroot-Ordner der Domain Ihres Payara-Servers.
-
(Passen Sie die DB und die Datei datamap-config.js entsprechend Ihrer Wünsche der Daten an und laden Sie entsprechende CSVs unter "Upload" hoch.)