Durchsuchbare Dokumentation aufrufen

Zurück zur Dokumentationsübersicht

E-Mail-Kompression per Worker einrichten

In agorum core werden E-Mails einmal im Original und zusätzlich für alle Anhänge und E-Mail-Bodys eigene Dokumente angelegt, um direkt darauf zugreifen zu können.

Mit dem hier beschriebenen Worker und Modul löschen Sie den Content der zusätzlichen Dokumente (Anhänge und E-Mail-Bodys). Sollten Sie die Information wieder benötigen, etwa beim Anschauen einer E-Mail, wird die Information aus dem Original automatisch wiederhergestellt.

Über einen Worker stellen Sie zusätzlich ein, welche E-Mails wann komprimiert werden. So werden die E-Mails zuerst normal angelegt, und nach einer einstellbaren Zeit wird der Content komprimiert, sodass das Archiv wieder kleiner wird.

Einschränkungen


Systemflags


Folgende Systemflags existieren, die den Zustand beschreiben:

Systemflag Beschreibung
131072 (compressed) Objekt wurde komprimiert, und der Inhalt wird bei Bedarf wiederhergestellt.
262144 (incompressible) Objekt kann nicht komprimiert werden, weil es etwa verlinkt ist.

Das Modul aktivieren


Das Modul aktivieren Sie im agorum core support tool.

Das Modul Mail compression aktivieren

Den Worker einstellen


  1. Öffnen Sie links in der Seitenleiste Weitere Apps und dann support tool.
  2. Wählen Sie links im Menü Base system > Configurations > Mail compression.
  3. Nehmen Sie die Einstellungen für den Worker vor.
  4. Klicken Sie oben auf Save.

    Ergebnis:
    Die Daten werden in der MetaDB mit den Unterpunkten Concurreny und Query in folgendem Pfad abgelegt:
    MAIN_MODULE_MANAGEMENT/workers/MailCompressor

Einstellungen vornehmen

Einstellungen zu Mail compression

 

Einstellung Beschreibung
Concurrency Definiert, mit wie vielen Threads der Worker arbeitet.

Normalerweise reicht hier 1, ein Wert von 0 deaktiviert die Kompression.
Folder-IDs Definiert die Ordner IDs, in denen die E-Mails komprimiert werden.

Beispiel für mehrere Ordner
1223456;23231222;12121123323

Beispiel für einen Ordner
9999

9999 ist der root-Ordner. Damit würden alle E-Mails im System komprimiert.
Retention days Definiert die Anzahl Tage, die abgewartet werden, bevor der Content komprimiert wird.

Beispiel
30

30 Tage nach Erstellung der E-Mail (oder nach automatischer Dekomprimierung) wird der Content komprimiert.
Query Definiert eine eigene Query, die die Einträge FolderIDs und Retention days ersetzt. Diese werden dann nicht mehr berücksichtigt.

Beispiel
inpath:9999 updatedate:[* TO NOW-1MINUTE]

Bei diesem Beispiel werden alle E-Mails komprimiert, deren Content älter als 1 Minute ist.

Per JavaScript Komprimierungen prüfen


Skript

Mit folgendem Skript prüfen Sie, wie viele E-Mails komprimiert oder nicht komprimiert sind und wie viele nicht komprimiert werden können.

let objects = require('common/objects');

objects.query('inpath:9999 (ismailattachment:true OR ismailbody:true)').includeHidden(true).limit(0).facets({
  compressed: {
    type: 'query',
    q: 'systemflag:131072',
    facet: {
      sum_size: 'sum(contentsize)'
    }
  },
  uncompressed: {
    type: 'query',
    q: 'NOT systemflag:(131072 OR 262144 OR 2)',
    facet: {
      sum_size: 'sum(contentsize)'
    }
  },
  incompressible: {
    type: 'query',
    q: 'systemflag:262144',
    facet: {
      sum_size: 'sum(contentsize)'
    }
  },
  incompressibleReadOnly: {
    type: 'query',
    q: 'systemflag:2',
    facet: {
      sum_size: 'sum(contentsize)'
    }
  }
}).search().facets;


Ergebnis

{
  "count": 2361,
  "incompressibleReadOnly": {
    "count": 0
  },
  "uncompressed": {
    "count": 0
  },
  "compressed": {
    "sum_size": 75269485,
    "count": 2359
  },
  "incompressible": {
    "sum_size": 64423,
    "count": 2
  }
}