Protokollweiterleitung log-forwarding

NOTE
Eine Beta-Version für die gegenseitige TLS-Authentifizierung (mTLS) ist für Splunk-, Elasticsearch/OpenSearch- und HTTPS-Ziele sowie für AEM-Protokolle (einschließlich Apache/Dispatcher) und CDN-Protokolle verfügbar. Um teilzunehmen, senden Sie eine E-Mail an 🔗aemcs-logforwarding-beta@adobe.com) mit Ihrer Programm-ID und den Umgebungs-IDs. Siehe Gegenseitige TLS-Authentifizierung (mTLS).
NOTE
Die Protokollweiterleitung wird jetzt als Self-Service konfiguriert, was sich von der veralteten Methode unterscheidet, für die ein Adobe-Support-Ticket eingereicht werden musste. Wenn Ihre Protokollweiterleitung von Adobe eingerichtet wurde, lesen Sie den Abschnitt Migrieren.
NOTE
AEM as a Cloud Service unterstützt auch den Versand von Protokollen über OpenTelemetry (OTLP) als Teil von OpenTelemetry (eingeschränkte Verfügbarkeit). Wenn Sie beide am selben Ziel aktivieren, erhalten Sie dort doppelte Protokollmeldungen - auf dieser Seite finden Sie weitere Details.

Kundschaften, die eine Lizenz bei einem Logging-Anbieter besitzen oder ein Logging-Produkt hosten, können AEM-Protokolle (einschließlich Apache/Dispatcher) und CDN-Protokolle an das zugehörige Logging-Ziel weiterleiten lassen. AEM as a Cloud Service unterstützt die folgenden Protokollierungsziele:

Protokolltechnologie
AEM
Dispatcher
CDN
mTLS
Amazon S3
Ja
Ja
Beta [1]
Nein
Azure Blob Storage
Ja
Ja
Ja
Nein
DataDog
Ja
Ja
Ja
Nein
Dynatrace
Ja
Ja
Beta [1]
Nein
ElasticSearch
OpenSearch
Ja
Ja
Ja
Beta
HTTPS
Ja
Ja
Ja
Beta
New Relic
Ja
Ja
Beta [1]
Nein
Splunk
Ja
Ja
Ja
Beta
Sumo Logic
Ja
Ja
Ja
Nein

[1] CDN-Protokollweiterleitung an Amazon S3, Dynatrace und New Relic befindet sich in der Beta-Phase. Um den Zugriff anzufordern, senden Sie eine E-Mail an 🔗aemcs-logforwarding-beta@adobe.com) mit Ihrer Programm-ID. Nachdem der Zugriff aktiviert wurde, können Sie mit cdn.enabled: true auch CDN-Protokolle für jedes Ziel aktivieren. Siehe CDN-Protokolle für Amazon S3, Dynatrace und New Relic (Beta).

NOTE
Protokolltechnologien, die in der mTLS Spalte mit Beta gekennzeichnet sind, unterstützen die Client-Zertifikatauthentifizierung (Mutual TLS) für AEM-, Dispatcher- und CDN-Protokolle. mTLS befindet sich in der Beta-Phase. Um den Zugriff anzufordern, senden Sie eine E-Mail an 🔗aemcs-logforwarding-beta@adobe.com) mit Ihrer Programm-ID und den Umgebungs-IDs. Siehe Gegenseitige TLS-Authentifizierung (mTLS).

Die Protokollweiterleitung wird im Self-Service-Modus konfiguriert, indem eine Konfiguration in Git deklariert wird, und kann über Cloud Manager-Konfigurations-Pipelines für Entwicklungs-, Staging- und Produktionsumgebungstypen bereitgestellt werden. Die Konfigurationsdatei kann mithilfe von Befehlszeilenprogrammen in schnellen Entwicklungsumgebungen (Rapid Development Environments, RDEs) bereitgestellt werden.

Es gibt eine Option für die Weiterleitung der AEM- und Apache/Dispatcher-Protokolle über die erweiterte Netzwerkinfrastruktur von AEM, z. B. eine dedizierte Egress-IP. CDN-Protokolle werden immer direkt vom CDN gesendet und verwenden keine erweiterten Netzwerkfunktionen. Siehe Transport und erweiterte Vernetzung.

Wie dieser Artikel organisiert ist how-organized

Dieser Artikel ist wie folgt aufgebaut:

  • Setup – für alle Protokollierungsziele gleich
  • Transport und erweiterte Netzwerkfunktionen – Vor der Erstellung der Logging-Konfiguration muss das Netzwerk-Setup berücksichtigt werden.
  • Gegenseitige TLS-Authentifizierung (Beta) - Authentifizierung bei Splunk-, Elasticsearch/OpenSearch- und HTTPS-Zielen mit einem Client-Zertifikat
  • Konfigurationen von Logging-Zielen – Jedes Ziel hat ein leicht unterschiedliches Format
  • CDN-Protokolle für Amazon S3, Dynatrace und New Relic (Betaversion) - So fordern Sie Zugriff auf CDN-Protokolle für diese Ziele an und aktivieren Sie sie
  • Protokolleintragsformate – Informationen zu den Protokolleintragsformaten
  • Migrieren von der alten Protokollweiterleitung – So wechseln Sie von der zuvor von Adobe eingerichteten Protokollweiterleitung zum Self-Service-Ansatz

Setup setup

  1. Erstellen Sie eine Datei mit dem Namen logForwarding.yaml. Sie sollte Metadaten enthalten, wie im Artikel Konfigurations-Pipeline beschrieben (kind sollte auf LogForwarding und „version“ auf „1“ gesetzt werden). Die Konfiguration sollte dann ähnlich wie die folgende aussehen (wir verwenden Splunk als Beispiel).

    code language-yaml
    kind: "LogForwarding"
    version: "1"
    data:
      splunk:
        default:
          enabled: true
          host: "splunk-host.example.com"
          token: "${{SPLUNK_TOKEN}}"
          index: "AEMaaCS"
    
  2. Platzieren Sie die Datei unter einem Ordner der obersten Ebene mit dem Namen config oder ähnlich, wie in Verwenden von Konfigurations-Pipelines beschrieben.

  3. Erstellen Sie für andere Umgebungstypen als RDE (der Befehlszeilen-Tools verwendet) eine zielgerichtete Bereitstellungskonfigurations-Pipeline in Cloud Manager, wie in diesem Abschnitt beschrieben. Beachten Sie, dass Full-Stack-Pipelines und Web-Stufen-Pipelines die Konfigurationsdatei nicht implementieren.

  4. Implementieren Sie die Konfiguration.

Token in der Konfiguration (z. B. ${{SPLUNK_TOKEN}}) stellen geheime Daten dar, die nicht in Git gespeichert werden sollten. Deklarieren Sie sie stattdessen als Geheime Umgebungsvariablen von Cloud Manager. Wählen Sie Alle als Dropdown-Wert für das Feld „Angewendeter Service“ aus, damit Protokolle an die Autoren-, Veröffentlichungs- und Vorschauebenen weitergeleitet werden können.

Es ist möglich, für CDN-Protokolle und AEM-Protokolle (einschließlich Apache/Dispatcher) unterschiedliche Werte festzulegen, indem nach dem Block default ein zusätzlicher Block cdn und/oder aem eingefügt wird. Dabei können Eigenschaften die im Block default definierten Werte überschreiben. Nur die Eigenschaft „enabled“ ist erforderlich. Ein möglicher Anwendungsfall könnte die Verwendung eines abweichenden Splunk-Index für CDN-Protokolle sein, wie im folgenden Beispiel veranschaulicht.

   kind: "LogForwarding"
   version: "1"
   data:
     splunk:
       default:
         enabled: true
         host: "splunk-host.example.com"
         token: "${{SPLUNK_TOKEN}}"
         index: "AEMaaCS"
       cdn:
         enabled: true
         token: "${{SPLUNK_TOKEN_CDN}}"
         index: "AEMaaCS_CDN"
NOTE
Für Amazon S3, Dynatrace und New Relic befinden sich CDN-Protokolle in der Beta-Phase. Sie werden nur weitergeleitet, wenn Ihr Programm Zugriff auf die Beta-Version hat und die cdn Blocksätze enabled: true. Siehe CDN-Protokolle für Amazon S3, Dynatrace und New Relic (Beta).

Ein weiteres Szenario besteht darin, die Weiterleitung der CDN-Protokolle oder AEM-Protokolle (einschließlich Apache/Dispatcher) zu deaktivieren. Um beispielsweise nur die CDN-Protokolle weiterzuleiten, können Sie Folgendes konfigurieren:

   kind: "LogForwarding"
   version: "1"
   data:
     splunk:
       default:
         enabled: true
         host: "splunk-host.example.com"
         token: "${{SPLUNK_TOKEN}}"
         index: "AEMaaCS"
       aem:
         enabled: false

Transport und erweiterte Netzwerkfunktionen transport-advancednetworking

Einige Organisationen möchten einschränken, welcher Traffic von den Protokollierungszielen empfangen werden kann. Andere benötigen möglicherweise andere Ports als HTTPS (443). In diesem Fall müssen vor der Implementierung der Protokollweiterleitungskonfiguration Erweiterte Netzwerkfunktionen konfiguriert werden.

In der folgenden Tabelle sehen Sie, welche Anforderungen an die erweiterte Netzwerk- und Logging-Konfiguration gestellt werden, je nachdem, ob Sie Port 443 verwenden oder nicht und ob Ihre Protokolle über eine feste IP-Adresse angezeigt werden müssen oder nicht. Die Tabelle gilt für AEM-Protokolle (einschließlich Apache/Dispatcher). Informationen zu CDN-Protokollen finden Sie CDN-Protokolle und IP-Zulassungslisten ​.

Ziel-Port
Müssen Protokolle von einer festen IP-Adresse stammen?
Überlegungen zu erweiterten Netzwerkfunktionen
Port-Definition für logForwarding.yaml erforderlich
HTTPS (443)
Nein
Nein
Nein
Ja
Ja, dedizierter Egress
Nein
Nicht standardmäßiger Port (z. B. 8088)
Nein
Ja, flexibler Egress
Ja
Ja
Ja, dedizierter Egress
Ja
NOTE
Ob Ihre Protokolle von einer einzelnen IP-Adresse stammen, hängt von der gewählten erweiterten Netzwerkkonfiguration ab. Um dies zu erleichtern, muss ein dedizierter Egress verwendet werden.
Die erweiterte Netzwerkkonfiguration ist ein zweistufiger Prozess, der eine Aktivierung auf Programm- und Umgebungsebene erfordert.
Per Hinweis unten ist es nicht möglich, die Protokollweiterleitung mit erweiterten Netzwerk-VPN-Verbindungen zu verwenden.

Für AEM-Protokolle (einschließlich Apache/Dispatcher) können Sie, wenn Sie Erweiterte Netzwerke konfiguriert haben, die aem.advancedNetworking-Eigenschaft verwenden, um sie von einer dedizierten Ausgangs-IP-Adresse weiterzuleiten.

Das folgende Beispiel zeigt, wie Logging an einem Standard-HTTPS-Port mit erweiterten Netzwerkfunktionen konfiguriert wird.

kind: "LogForwarding"
version: "1"
data:
  splunk:
    default:
      enabled: true
      host: "splunk-host.example.com"
      port: 443
      token: "${{SPLUNK_TOKEN}}"
      index: "aemaacs"
    aem:
      advancedNetworking: true

CDN-Protokolle und IP-Zulassungslisten cdn-ip-allowlist

CDN-Protokolle werden direkt vom CDN (Fastly) und nicht von AEM as a Cloud Service gesendet. Dies gilt für jedes Protokollierungsziel:

  • CDN-Protokolle werden von den freigegebenen IP-Adressbereichen von Fastly gesendet, veröffentlicht unter https://api.fastly.com/public-ip-list. Sie werden nie von Ihrer dedizierten Ausgangs-IP-Adresse gesendet.
  • Die advancedNetworking-Eigenschaft gilt nur für AEM-Protokolle (einschließlich Apache/Dispatcher). Dies hat keine Auswirkungen auf CDN-Protokolle. Wenn advancedNetworking festgelegt ist und die CDN-Protokollweiterleitung für dasselbe Ziel aktiviert ist, wird die Konfiguration mit einer Warnung als Erinnerung bereitgestellt.
  • Wenn Ihr Protokollierungsziel nur Traffic von bestimmten IP-Adressen akzeptiert, fügen Sie alle der von Fastly veröffentlichten IPv4- und IPv6-Bereiche zu seiner Zulassungsliste hinzu, zusätzlich zu Ihrer dedizierten Ausgangs-IP-Adresse für AEM-Protokolle. Ein Ziel, das nur die dedizierte Ausgangs-IP-Adresse zulässt, erhält keine CDN-Protokolle.
  • Die IP-Adressbereiche von Fastly ändern sich im Laufe der Zeit, manchmal innerhalb von Wochen. Überprüfen Sie die veröffentlichte Liste regelmäßig und halten Sie Ihre Zulassungslisten auf dem neuesten Stand.
  • Amazon S3 enthält zusätzliche Überlegungen zu CDN-Protokollen. Siehe Amazon S3 CDN-Protokolle.

Wenn die Liste der freigegebenen IP-Adressen zu groß ist, um sie auf die Zulassungsliste zu setzen, sollten Sie CDN-Protokolle an einen HTTPS-Server oder Azure Blob Store (außer Adobe) senden, wo Logiken geschrieben werden können, um die Protokolle von einer bekannten IP an ihr endgültiges Ziel zu senden.

NOTE
Es ist nicht möglich, dass CDN-Protokolle von derselben IP-Adresse stammen wie Ihre AEM-Protokolle, da Protokolle direkt von Fastly und nicht von AEM Cloud Service gesendet werden.
Aus diesem Grund ist es nicht möglich, die Protokollweiterleitung mit erweiterten Netzwerk-VPN-Konfigurationen zu verwenden.

Gegenseitige TLS-Authentifizierung (Beta) mtls

NOTE
TLS für die Protokollweiterleitung ist eine Beta-Funktion. Um sie zu verwenden, senden Sie eine E-Mail an 🔗aemcs-logforwarding-beta@adobe.com) mit Ihrer Programm-ID und den Umgebungs-IDs.

Splunk-, Elasticsearch/OpenSearch- und HTTPS-Ziele unterstützen gegenseitiges TLS (mTLS). Bei mTLS stellt AEM as a Cloud Service ein Client-Zertifikat bereit, wenn es eine Verbindung zu Ihrem Protokollierungsziel herstellt, sodass das Ziel überprüfen kann, ob die Protokolle aus Ihrer Umgebung stammen. mTLS gilt für AEM-Protokolle (einschließlich Apache/Dispatcher) und für CDN-Protokolle.

mTLS arbeitet mit der vorhandenen Authentifizierung des Ziels zusammen. Behalten Sie die vorhandenen Authentifizierungseigenschaften des Ziels bei, z. B. token (Splunk) oder user und password (Elasticsearch/OpenSearch). Für HTTPS-Ziele, die CDN-Protokolle weiterleiten, sind authHeaderName und authHeaderValue erforderlich.

Konfiguration mtls-configuration

Fügen Sie einen mtls Block neben den anderen Eigenschaften des Ziels hinzu:

  • cert - Erforderlich. Das Client-Zertifikat im PEM-Format. Darauf können CA-Zwischenzertifikate folgen, wobei das Client-Zertifikat zuerst angezeigt wird.
  • key - Erforderlich. Der private Schlüssel für das Client-Zertifikat im PEM-Format. RSA- und EC-Schlüssel werden unterstützt, unverschlüsselt oder verschlüsselt. Siehe Unterstützte Schlüsselformate.
  • ca - optional. Das CA-Zertifikat im PEM-Format, das zum Überprüfen des Serverzertifikats Ihres Ziels verwendet wird. Sie kann mehr als ein Zertifikat enthalten, z. B. eine Zertifikatskette. Legen Sie sie fest, wenn das Serverzertifikat von einer privaten Zertifizierungsstelle ausgestellt wird.
  • keyPasswd - optional. Das Kennwort für den privaten Schlüssel. Legen Sie sie nur fest, wenn der Schlüssel verschlüsselt ist.

Im folgenden Beispiel werden AEM- und CDN-Protokolle mithilfe von mTLS an Splunk weitergeleitet:

kind: "LogForwarding"
version: "1"
data:
  splunk:
    default:
      enabled: true
      host: "splunk-host.example.com"
      token: "${{SPLUNK_TOKEN}}"
      index: "aemaacs"
      mtls:
        cert: "${{SPLUNK_MTLS_CERT}}"
        key: "${{SPLUNK_MTLS_KEY}}"
        ca: "${{SPLUNK_MTLS_CA}}"

Es gelten folgende Regeln:

  • cert und key müssen zusammen bereitgestellt werden. Ein mtls, der nur ca oder keyPasswd enthält, wird abgelehnt.
  • Jede mtls-Eigenschaft muss ein geheimer Verweis sein, z. B. ${{SPLUNK_MTLS_CERT}} und sonst nichts. Direkt in der Datei platzierter Zertifikat- oder Schlüsseltext wird abgelehnt.
  • Deklarieren Sie jedes Geheimnis als Cloud Manager Geheime Umgebungsvariable wie unter ​ beschrieben. Fügen Sie den vollständigen PEM-Text ein, einschließlich der -----BEGIN- und -----END. Wenn die Zeilenumbrüche beim Einfügen des Werts in Cloud Manager entfernt werden, werden sie automatisch wiederhergestellt. Um mehr als ein Zertifikat bereitzustellen, fügen Sie sie nacheinander in dasselbe Geheimnis ein.
  • Das Client-Zertifikat wird bei der Bereitstellung überprüft. Es muss ein gültiges PEM und innerhalb seiner Gültigkeitsdauer sein. Wenn cert mehr als ein Zertifikat enthält, muss das Client-Zertifikat zuerst kommen und die Zertifikate müssen eine gültige Kette bilden. Wenn eine Prüfung fehlschlägt, schlägt die Bereitstellung fehl.

Unterstützte Schlüsselformate mtls-key-formats

Die erste Zeile des PEM-Texts des Schlüssels zeigt sein Format an:

Schlüsselformat
Erste Zeile des PEM-Textes
RSA, PKCS#1
-----BEGIN RSA PRIVATE KEY-----
EG, SEK1
-----BEGIN EC PRIVATE KEY-----
PKCS#8 (RSA oder EC)
-----BEGIN PRIVATE KEY-----
Verschlüsselte PKCS#8 (RSA oder EC)
-----BEGIN ENCRYPTED PRIVATE KEY-----
Verschlüsseltes älteres Format (RSA oder EC), mit AES oder Triple DES (DES-EDE3-CBC)
-----BEGIN RSA PRIVATE KEY----- oder -----BEGIN EC PRIVATE KEY-----, gefolgt von Proc-Type: 4,ENCRYPTED und DEK-Info

Legen Sie für einen verschlüsselten Schlüssel auch keyPasswd auf sein Kennwort fest.

Verschlüsselte PKCS#8 wird für verschlüsselte Schlüssel empfohlen. Um einen Schlüssel im älteren Format zu konvertieren, verwenden Sie den folgenden Befehl, der nach dem aktuellen Kennwort und dann nach dem Kennwort des neuen Schlüssels fragt:

openssl pkcs8 -topk8 -v2 aes-256-cbc -in client.key -out client-pkcs8.key

Speichern Sie den Inhalt von client-pkcs8.key in den geheimen Daten, auf die von key verwiesen wird, und das zugehörige Kennwort in den geheimen Daten, auf die von keyPasswd verwiesen wird.

CDN-Protokolle mtls-cdn

Wie andere Eigenschaften gilt ein mtls unter default sowohl für AEM-Protokolle als auch für CDN-Protokolle. Um ein anderes Zertifikat für CDN-Protokolle zu verwenden, legen Sie die mtls in einem cdn fest. Um mTLS nur für AEM-Protokolle oder nur CDN-Protokolle zu verwenden, platzieren Sie den mtls in den aem- oder cdn-Block anstelle von default.

Nachdem Sie eine Konfiguration bereitgestellt haben, die die CDN-Protokollweiterleitung an ein Ziel ermöglicht, kann es mehrere Minuten dauern, bis die ersten CDN-Protokolle eintreffen. Bei HTTPS-Zielen beginnt die CDN-Protokollbereitstellung auch erst, nachdem Ihr Server die unter „HTTPS​ beschriebene einmalige Herausforderung abgeschlossen ​. Die Challenge-Anfrage wird mit demselben Client-Zertifikat gesendet, sodass Ihr Server dieses Zertifikat auch auf dem Challenge-Pfad akzeptieren muss.

Rotation und Ablauf von Zertifikaten mtls-rotation

Um ein Zertifikat zu rotieren, aktualisieren Sie die Cloud Manager Secret-Umgebungsvariablen, die das Zertifikat (und den Schlüssel, falls er geändert wurde) enthalten, und führen Sie die Konfigurations-Pipeline erneut aus. Wenn die Konfigurationsdatei für die Protokollweiterleitung selbst unverändert ist, nehmen Sie auch eine Änderung daran vor, damit die Konfiguration erneut angewendet wird. Speichern Sie beispielsweise die neuen Werte in neuen geheimen Umgebungsvariablen und verweisen Sie auf diese Namen im mtls.

Möglicherweise erhalten Sie auch eine proaktive Aktionscenter-Benachrichtigung etwa 21 Tage vor Ablauf eines Client-Zertifikats. Verfolgen Sie die Ablaufdaten von Zertifikaten selbst, anstatt sich auf diese Benachrichtigung zu verlassen.

Konfiguration des Protokollierungsziels logging-destinations

Im Folgenden sind die Konfigurationen sowie ggf. spezifische Überlegungen für die unterstützten Protokollierungsziele aufgeführt.

Amazon S3 amazons3

CDN-Protokolle für Amazon S3 befinden sich in der Beta-Phase. Um den Zugriff anzufordern, senden Sie eine E-Mail an 🔗aemcs-logforwarding-beta@adobe.com) mit Ihrer Programm-ID. Informationen ​ Aktivieren von CDN-Protokollen für Amazon S3, Dynatrace und New Relic (Betaversion und Amazon S3 CDN-Protokolle zu Dateilayout und Überlegungen.

NOTE
AEM-Protokolle (einschließlich Apache/Dispatcher) werden für jeden Protokolldateityp in S3 hochgeladen, wenn 100 MB an Protokollen erfasst wurden, oder nach 10 Minuten, je nachdem, was früher eintritt. Dies kann zu einer anfänglichen Verzögerung für das Schreiben von Protokollen in S3 führen, sobald die Funktion aktiviert/deaktiviert wird. Weitere Informationen zu diesem Verhalten. CDN-Protokolle werden unterschiedlich geschrieben. Siehe Amazon S3 CDN-Protokolle.
kind: "LogForwarding"
version: "1"
data:
  awsS3:
    default:
      enabled: true
      region: "your-bucket-region"
      bucket: "your-bucket-name"
      accessKey: "${{AWS_S3_ACCESS_KEY}}"
      secretAccessKey: "${{AWS_S3_SECRET_ACCESS_KEY}}"

Weiterleiten von AEM-Protokollen und CDN-Protokollen (CDN-Protokolle in der Beta-Phase):

kind: "LogForwarding"
version: "1"
data:
  awsS3:
    default:
      enabled: true
      region: "us-east-1"
      bucket: "your-bucket-name"
      accessKey: "${{AWS_S3_ACCESS_KEY}}"
      secretAccessKey: "${{AWS_S3_SECRET_ACCESS_KEY}}"
    cdn:
      enabled: true

So leiten Sie nur CDN-Protokolle weiter (in der Beta-Phase):

kind: "LogForwarding"
version: "1"
data:
  awsS3:
    default:
      enabled: true
      region: "us-east-1"
      bucket: "your-bucket-name"
      accessKey: "${{AWS_S3_ACCESS_KEY}}"
      secretAccessKey: "${{AWS_S3_SECRET_ACCESS_KEY}}"
    aem:
      enabled: false
    cdn:
      enabled: true

Um die S3-Protokollweiterleitung zu verwenden, müssen Sie einen AWS IAM-Benutzenden mit der entsprechenden Richtlinie für den Zugriff auf Ihren S3-Bucket vorkonfigurieren. Wie Sie IAM-Benutzeranmeldeinformationen erstellen, erfahren Sie in der AWS IAM-Benutzerdokumentation.

Die IAM-Richtlinie sollte dem Benutzenden die Verwendung von s3:PutObject ermöglichen. Um CDN-Protokolle (in der Betaversion) weiterzuleiten, lassen Sie auch s3:AbortMultipartUpload zu. Es sind keine anderen Berechtigungen erforderlich: Der Benutzer muss den Bucket weder lesen noch auflisten. Beispiel:

{
    "Version": "2012-10-17",
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "s3:PutObject",
            "s3:AbortMultipartUpload"
        ],
        "Resource": "arn:aws:s3:::your-bucket-name/*"
    }]
}

Wenn der Bucket nur CDN-Protokolle erhält, können Sie die Resource auf arn:aws:s3:::your-bucket-name/aemcdn/* beschränken.

Weitere Informationen zur Implementierung finden Sie in der Dokumentation zur AWS-Bucket-Richtlinie.

Amazon S3 CDN-Protokolle (Betaversion) amazons3-cdn

CDN-Protokolle für Amazon S3 befinden sich in der Beta-Phase. Sie benötigen Zugriff auf Ihr Programm und Ihre cdn.enabled: true. Siehe CDN-Protokolle für Amazon S3, Dynatrace und New Relic (Beta).

CDN-Protokolle werden unter den aemcdn/ Ordner Ihres Buckets geschrieben. Das Dateinamenformat ist YYYY-MM-DDThh:mm:ss.000-<uniqueid>.log.gz. Beispiel:

aemcdn/
   2026-03-04T10:00:00.000-WnFWYN9BpOUs2aOVn4ee.log.gz
   2026-03-04T10:00:00.000-0pX8ub2yQcAmLs7rT1kd.log.gz
   2026-03-04T10:05:00.000-h3JkVv9ZqN2wE5sXyR0a.log.gz
  • Die Dateien sind gzip-komprimiert. Jede Datei enthält mehrere Protokolleinträge, ein JSON-Objekt pro Zeile. Die Einträge haben dieselben Eigenschaften wie CDN-Protokolle, die in den Azure Blob-Speicher geschrieben werden. Das Protokolleintragsformat wird unter Protokollierung für AEM as a Cloud Service beschrieben. Jeder Eintrag enthält auch die zusätzlichen Eigenschaften, die im Abschnitt Protokolleintragsformate unten erwähnt werden.
  • Alle 5 Minuten wird ein neuer Dateisatz geschrieben. Das CDN verfügt über viele Server, und jeder Server, der Ihren Traffic verarbeitet, schreibt seine eigene Datei, sodass Sie für jeden 5-minütigen Zeitraum viele Dateien erwarten, selbst bei geringem Traffic. Beispielsweise erzeugt eine Testumgebung mit wenig Traffic alle 5 Minuten etwa 50 Dateien.
  • Protokolleinträge werden normalerweise 1 bis 6 Minuten nach der Anfrage im Bucket angezeigt.
  • Die Zeit im Dateinamen ist kein exaktes Zeitfenster, und Dateien überschneiden sich. Beispielsweise kann eine Datei mit dem Namen …T16:00:00.000-….log.gz Einträge von 15:55 bis 16:04 enthalten. Verwenden Sie die timestamp-Eigenschaft jedes Eintrags, um den Zeitpunkt einer Anfrage zu ermitteln.
  • Dateien werden nach dem Schreiben nicht mehr geändert.

Kunden sind für die Verarbeitung und Verwaltung dieser Dateien verantwortlich, z. B. mit einer S3-Lebenszyklusregel im aemcdn/ Präfix.

Überlegungen zu CDN-Protokollen (Betaversion):

  • Die Authentifizierung verwendet den Zugriffsschlüssel eines IAM-Benutzers. IAM-Rollen werden nicht unterstützt.

  • Der IAM-Benutzer benötigt nur s3:PutObject und s3:AbortMultipartUpload. Es benötigt keine Berechtigung zum Lesen oder Auflisten des Buckets.

  • Die standardmäßige Bucket-Verschlüsselung mit Amazon S3 Managed Keys (SSE-S3) wird unterstützt, und CDN-Protokolldateien werden dann im Ruhezustand verschlüsselt.

  • Es werden nur Buckets in den standardmäßigen kommerziellen AWS-Regionen unterstützt. Die Regionen AWS GovCloud (USA) und AWS China werden nicht unterstützt. Die region-Eigenschaft muss der Bereich des Buckets sein.

  • Abgelehnte Uploads werden nicht wiederholt. Wenn die Bucket-Richtlinie oder die Berechtigungen des IAM-Benutzers einen Upload von CDN-Protokollen ablehnen, gehen die Protokolleinträge in diesem Upload ohne Warnung verloren. Dies unterscheidet sich von AEM-Protokollen, in denen fehlgeschlagene Uploads erneut versucht werden. Stellen Sie sicher, dass Änderungen an Ihrer Bucket-Richtlinie oder an IAM-Benutzenden keine Uploads vom CDN blockieren.

  • Wir empfehlen einen IAM-Benutzer, der nur für den Bucket s3:PutObject und s3:AbortMultipartUpload zulässig ist (oder nur für das aemcdn/-Präfix, wenn der Bucket nur CDN-Protokolle erhält), und eine Bucket-Richtlinie ohne IP-Adressbedingungen.

  • Wenn Ihre Bucket-Richtlinie den Zugriff nach IP-Adresse einschränkt, fügen Sie alle veröffentlichten IPv4- und IPv6-Bereiche von Fastly zur aws:SourceIp Bedingung hinzu und halten Sie sie auf dem neuesten Stand. Siehe CDN-Protokolle und IP-Zulassungslisten ​.

  • Buckets, die nur Anfragen über einen VPC-Endpunkt akzeptieren (z. B. eine Bucket-Richtlinie mit einer aws:SourceVpce), können keine CDN-Protokolle empfangen.

  • Beachten Sie Folgendes, um verlorene CDN-Protokolle zu erkennen:

    • AWS CloudTrail-Datenereignisse oder S3-Serverzugriffsprotokolle. Sie zeichnen abgelehnte PutObject (HTTP-Status 403) von Fastly-IP-Adressen auf.
    • Ein Alarm, der ausgelöst wird, wenn keine neuen Objekte länger als erwartet unter aemcdn/ eingetroffen sind. Dateien werden alle 5 Minuten geschrieben.

Azure Blob Storage azureblob

kind: "LogForwarding"
version: "1"
data:
  azureBlob:
    default:
      enabled: true
      storageAccountName: "example_acc"
      container: "aem_logs"
      sasToken: "${{AZURE_BLOB_SAS_TOKEN}}

Zur Authentifizierung sollte ein SAS-Token verwendet werden. Erstellen Sie das Token auf der Seite „Shared Access Signature“ und nicht auf der Seite „Shared Access Token“. Verwenden Sie die folgenden Einstellungen für die Konfiguration:

  • Zugelassene Dienste: „Blob“ muss ausgewählt sein.
  • Zugelassene Ressourcen: Objekt und Container müssen ausgewählt werden.
  • Zulässige Berechtigungen: Lesen, Schreiben, Hinzufügen, Liste, Erstellen müssen ausgewählt sein.
  • Gültiges Start- und Ablaufdatum mit Uhrzeit. Die Gültigkeit muss zum Zeitpunkt der Bereitstellung der Konfiguration mindestens drei Monate in der Zukunft liegen.

Im Folgenden finden Sie einen Screenshot einer Beispiel-SAS-Token-Konfiguration:

Azure Blob SAS-Token-Konfiguration

Wenn Protokolle nicht mehr bereitgestellt werden, nachdem sie zuvor korrekt bereitgestellt wurden, überprüfen Sie, ob das von Ihnen konfigurierte SAS-Token weiterhin gültig ist, da es möglicherweise abgelaufen ist.

Azure Blob Storage-CDN-Protokolle azureblob-cdn

Jeder der global verteilten Protokollierungs-Server erzeugt alle paar Sekunden eine neue Datei im Ordner aemcdn. Nach der Erstellung wird nichts mehr an die Datei angehängt. Das Dateinamenformat ist JJJJ-MM-DDThhss.sss-uniqueid.log. Beispielsweise 2024-03-04T10:00:00.000-WnFWYN9BpOUs2aOVn4ee.log.

Beispielsweise zu einem bestimmten Zeitpunkt:

aemcdn/
   2024-03-04T10:00:00.000-abc.log
   2024-03-04T10:00:00.000-def.log

Und dann 30 Sekunden später:

aemcdn/
   2024-03-04T10:00:00.000-abc.log
   2024-03-04T10:00:00.000-def.log
   2024-03-04T10:00:30.000-ghi.log
   2024-03-04T10:00:30.000-jkl.log
   2024-03-04T10:00:30.000-mno.log

Jede Datei enthält mehrere JSON-Protokolleinträge, die sich jeweils in einer separaten Zeile befinden. Die Protokolleintragsformate werden unter Protokollierung für AEM as a Cloud Service beschrieben. Jeder Protokolleintrag enthält auch die zusätzlichen Eigenschaften, die im Abschnitt Protokolleintragsformate unten erwähnt werden.

Azure Blob Storage-AEM-Protokolle azureblob-aem

AEM-Protokolle (einschließlich Apache/Dispatcher) werden unter einem Ordner mit der folgenden Namenskonvention angezeigt:

  • aemaccess
  • aemerror
  • aemrequest
  • aemdispatcher
  • aemhttpdaccess
  • aemhttpderror

Unter jedem Ordner wird eine einzelne Datei erstellt, an die angehängt wird. Kundinnen und Kunden sind für die Verarbeitung und Verwaltung dieser Datei verantwortlich, damit sie nicht zu groß wird.

Weitere Informationen finden Sie in den Protokolleintragsformaten unter Protolkollierung für AEM as a Cloud Service. Die Protokolleinträge enthalten auch die zusätzlichen Eigenschaften, die im Abschnitt Protokolleintragsformate unten erwähnt werden.

Datadog datadog

kind: "LogForwarding"
version: "1"
data:
  datadog:
    default:
      enabled: true
      host: "http-intake.logs.datadoghq.eu"
      token: "${{DATADOG_API_KEY}}"
      tags:
         tag1: value1
         tag2: value2

Überlegungen

  • Erstellen Sie einen API-Schlüssel ohne Integration mit einem bestimmten Cloud-Anbieter.
  • Die Eigenschaft „tags“ ist optional
  • Bei AEM-Protokollen wird das Datadog-Quell-Tag auf eines der folgenden festgelegt: aemaccess, aemerror, aemrequest, aemdispatcher, aemhttpdaccess oder aemhttpderror
  • Bei CDN-Protokollen wird das Datadog-Quell-Tag auf aemcdn gesetzt
  • Das Datadog-Service-Tag ist auf adobeaemcloud festgelegt, kann jedoch im Tags-Abschnitt überschrieben werden
  • Wenn Ihre Aufnahme-Pipeline Datadog-Tags verwendet, um den entsprechenden Index für Weiterleitungsprotokolle zu ermitteln, stellen Sie sicher, dass diese Tags in der YAML-Datei für die Protokollweiterleitung korrekt konfiguriert sind. Fehlende Tags können eine erfolgreiche Protokollaufnahme verhindern, wenn die Pipeline von ihnen abhängig ist.

Elasticsearch und OpenSearch elastic

kind: "LogForwarding"
version: "1"
data:
  elasticsearch:
    default:
      enabled: true
      host: "example.com"
      user: "${{ELASTICSEARCH_USER}}"
      password: "${{ELASTICSEARCH_PASSWORD}}"
      pipeline: "ingest pipeline name"

Überlegungen

  • Der standardmäßige Port ist 443. Optional kann er mit einer Eigenschaft namens port überschrieben werden.
  • Verwenden Sie als Anmeldeinformationen Implementierungs-Anmeldeinformationen und keine Konto-Anmeldeinformationen. Dies sind die Anmeldeinformationen, die auf einem Bildschirm ähnlich dem folgenden generiert werden:

Implementierungs-Anmeldeinformationen für Elastic

  • Für AEM-Protokolle ist index auf einen der Werte aemaccess, aemerror, aemrequest, aemdispatcher, aemhttpdaccess oder aemhttpderror festgelegt.
  • Die optionale Pipeline-Eigenschaft sollte auf den Namen der Elasticsearch- oder OpenSearch-Aufnahme-Pipeline festgelegt werden, die so konfiguriert werden kann, dass der Protokolleintrag an den entsprechenden Index weitergeleitet wird. Der Prozessortyp der Pipeline muss auf script und die Skriptsprache auf painless eingestellt werden. Hier finden Sie ein Beispielskript-Snippet zur Weiterleitung von Protokolleinträgen in einen Index wie aemaccess_dev_26_06_2024:
def envType = ctx.aem_env_type != null ? ctx.aem_env_type : 'unknown';
def sourceType = ctx._index;
def date = new SimpleDateFormat('dd_MM_yyyy').format(new Date());
ctx._index = sourceType + "_" + envType + "_" + date;

HTTPS https

kind: "LogForwarding"
version: "1"
data:
  https:
    default:
      enabled: true
      url: "https://example.com/aem_logs/aem"
      authHeaderName: "X-AEMaaCS-Log-Forwarding-Token"
      authHeaderValue: "${{HTTPS_LOG_FORWARDING_TOKEN}}"

Überlegungen

  • Die URL-Zeichenfolge muss https:// enthalten. Andernfalls schlägt die Validierung fehl.
  • Die URL kann einen Port enthalten. Beispiel: https://example.com:8443/aem_logs/aem. Wenn in der URL-Zeichenfolge kein Port enthalten ist, wird Port 443 (der standardmäßige HTTPS-Port) angenommen.

HTTPS-CDN-Protokolle https-cdn

Web-Anfragen (POSTs) werden kontinuierlich mit einer JSON-Payload gesendet, die ein Array von Protokolleinträgen ist, wobei das unter Protokollierung für AEM as a Cloud Service beschriebene Protokolleintragsformat verwendet wird. Weitere Eigenschaften werden im Abschnitt Protokolleintragsformate unten beschrieben.

Es gibt auch eine Eigenschaft mit dem Namen sourcetype, für die der Wert aemcdn festgelegt ist.

NOTE
Bevor der erste CDN-Protokolleintrag gesendet wird, muss Ihr HTTP-Server eine einmalige Anfrage erfolgreich abschließen: Eine Anfrage, die an den Pfad gesendet wird, muss /.well-known/fastly/logging/challenge mit einem Sternchen * im Hauptteil und dem Status-Code 200 antworten.

HTTPS-AEM-Protokolle https-aem

Bei AEM-Protokollen (einschließlich Apache/Dispatcher) werden Web-Anfragen (POSTs) kontinuierlich mit einer JSON-Payload gesendet, die ein Array von Protokolleinträgen mit den verschiedenen Protokolleintragsformaten ist, wie unter Protokollierung für AEM as a Cloud Service beschrieben. Weitere Eigenschaften werden im Abschnitt Protokolleintragsformate unten beschrieben.

Es gibt auch eine Eigenschaft mit dem Namen Source-Type, die auf einen der folgenden Werte eingestellt ist:

  • aemaccess
  • aemerror
  • aemrequest
  • aemdispatcher
  • aemhttpdaccess
  • aemhttpderror

New Relic-Protokoll-API newrelic-https

Die Protokollweiterleitung an New Relic nutzt die New Relic HTTPS Log-API für die Aufnahme. CDN-Protokolle an New Relic befinden sich in der Beta-Phase. Um den Zugriff anzufordern, senden Sie eine E-Mail an 🔗aemcs-logforwarding-beta@adobe.com) mit Ihrer Programm-ID. Informationen ​ Aktivieren von CDN-Protokollen für Amazon S3, Dynatrace und New Relic (Betaversion finden Sie unter.

  kind: "LogForwarding"
  version: "1"
  data:
    newRelic:
      default:
        enabled: true
        uri: "https://log-api.newrelic.com/log/v1"
        apiKey: "${{NR_API_KEY}}"

Weiterleiten von AEM-Protokollen und CDN-Protokollen (CDN-Protokolle in der Beta-Phase):

  kind: "LogForwarding"
  version: "1"
  data:
    newRelic:
      default:
        enabled: true
        uri: "https://log-api.newrelic.com/log/v1"
        apiKey: "${{NR_API_KEY}}"
      cdn:
        enabled: true

So leiten Sie nur CDN-Protokolle weiter (in der Beta-Phase):

  kind: "LogForwarding"
  version: "1"
  data:
    newRelic:
      default:
        enabled: true
        uri: "https://log-api.newrelic.com/log/v1"
        apiKey: "${{NR_API_KEY}}"
      aem:
        enabled: false
      cdn:
        enabled: true
NOTE
Die Protokollweiterleitung an New Relic ist nur für kundeneigene New Relic-Konten verfügbar.

Überlegungen

  • New Relic bietet regionsspezifische Endpunkte, je nachdem, wo Ihr New Relic-Konto bereitgestellt ist. Setzen Sie uri auf den Protokoll-API-Endpunkt für die Region Ihres Kontos, z. B. https://log-api.newrelic.com/log/v1 für Konten in der US-Region. Weitere Informationen finden Sie in der New Relic-Dokumentation.
  • Verwenden Sie apiKey einen New Relic-Lizenzschlüssel (Schlüsseltyp AUFNEHMEN - LIZENZ) aus dem Konto, das die Protokolle erhält. Derselbe Schlüssel wird für AEM-Protokolle und CDN-Protokolle verwendet.
  • Für AEM-Protokolle wird das source auf eines der folgenden Attribute festgelegt: aemaccess, aemerror, aemrequest, aemdispatcher, aemhttpdaccess oder aemhttpderror. Für CDN-Protokolle (Beta) ist source auf aemcdn festgelegt, und jeder Datensatz enthält alle CDN-Protokolleigenschaften. Um beispielsweise CDN-Protokolle abzufragen: FROM Log SELECT * WHERE source = 'aemcdn' SINCE 1 hour ago.
  • In CDN-Protokolleinträgen (Betaversion), die an New Relic gesendet werden, timestamp eine Zahl ist: die Startzeit der Anfrage in Millisekunden seit der Unix-Epoche. Andere Protokollierungsziele erhalten timestamp als ISO 8601-Zeichenfolge.
  • CDN-Protokolle (Betaversion) können die Aufnahme in New Relic erheblich verlängern. Siehe CDN-Protokolle für Amazon S3, Dynatrace und New Relic (Beta).

Dynatrace-Protokoll-API dynatrace-https

Die Protokollweiterleitung an Dynatrace nutzt die Dynatrace-HTTPS-API für die Aufnahme. CDN-Protokolle an Dynatrace befinden sich in der Beta-Phase. Um den Zugriff anzufordern, senden Sie eine E-Mail an 🔗aemcs-logforwarding-beta@adobe.com) mit Ihrer Programm-ID. Informationen ​ Aktivieren von CDN-Protokollen für Amazon S3, Dynatrace und New Relic (Betaversion finden Sie unter.

Für das Token ist der Aufnahmeprotokolle (logs.ingest) erforderlich. Dasselbe Token wird für AEM-Protokolle und CDN-Protokolle verwendet.

  kind: "LogForwarding"
  version: "1"
  data:
    dynatrace:
      default:
        enabled: true
        environmentId: "${{DYNATRACE_ENVID}}"
        token: "${{DYNATRACE_TOKEN}}"

Weiterleiten von AEM-Protokollen und CDN-Protokollen (CDN-Protokolle in der Beta-Phase):

  kind: "LogForwarding"
  version: "1"
  data:
    dynatrace:
      default:
        enabled: true
        environmentId: "${{DYNATRACE_ENVID}}"
        token: "${{DYNATRACE_TOKEN}}"
      cdn:
        enabled: true

So leiten Sie nur CDN-Protokolle weiter (in der Beta-Phase):

  kind: "LogForwarding"
  version: "1"
  data:
    dynatrace:
      default:
        enabled: true
        environmentId: "${{DYNATRACE_ENVID}}"
        token: "${{DYNATRACE_TOKEN}}"
      aem:
        enabled: false
      cdn:
        enabled: true

Überlegungen

  • Es werden nur Dynatrace SaaS-Umgebungen unterstützt. environmentId ist die ID in Ihrer Umgebungs-URL https://<environmentId>.live.dynatrace.com. Verwenden Sie nur die ID, keine URL oder einen Host-Namen: Für CDN-Protokolle darf sie keine Punkte enthalten. Dynatrace Managed und ActiveGate-Endpunkte werden nicht unterstützt.
  • Jeder Protokolleintrag enthält eine source. Bei AEM-Protokollen ist dies eines der folgenden Protokolle: aemaccess, aemerror, aemrequest, aemdispatcher, aemhttpdaccess oder aemhttpderror. Für CDN-Protokolle (Betaversion) ist dies aemcdn.
  • CDN-Protokolle (Betaversion) können die Aufnahme in Dynatrace erheblich verlängern. Siehe CDN-Protokolle für Amazon S3, Dynatrace und New Relic (Beta).

Suchen von CDN-Protokollen in Dynatrace (Betaversion) dynatrace-cdn

Dynatrace speichert jeden CDN-Protokolleintrag als JSON-Text im content eines Protokolldatensatzes und verwendet die timestamp des Eintrags als Eintragszeit. Die CDN-Protokolleigenschaften wie source, url und status sind keine separaten Protokollattribute. Dasselbe gilt für AEM-Protokolle, die an Dynatrace weitergeleitet werden. Das Ergebnis ist:

  • Filter im einfachen Modus des klassischen Protokoll-Viewers funktionieren nicht in diesen Eigenschaften. Ein Filter für ein nicht vorhandenes Attribut wird ignoriert, sodass alle Protokolle zurückgegeben werden.
  • Die status dieser Datensätze zeigt NONE an, da die CDN-status-Eigenschaft der HTTP-Status-Code ist, keine Protokollebene.

Verwenden Sie stattdessen den erweiterten Modus (DQL). So suchen Sie CDN-Protokolle der letzten Stunde:

fetch logs, from: now() - 1h
| filter matchesPhrase(content, "aemcdn")

So analysieren Sie die Eigenschaften des CDN-Protokolls und zeigen einige davon an:

fetch logs, from: now() - 1h
| parse content, "JSON:cdn"
| filter cdn[source] == "aemcdn"
| fields timestamp, cdn[url], cdn[status], cdn[pop], cdn[cache], cdn[aem_tier]

Splunk splunk

kind: "LogForwarding"
version: "1"
data:
  splunk:
    default:
      enabled: true
      host: "splunk-host.example.com"
      token: "${{SPLUNK_TOKEN}}"
      index: "aemaacs"

Überlegungen

  • Der standardmäßige Port ist 443. Optional kann er mit einer Eigenschaft namens port überschrieben werden.
  • Das Feld „sourceType“ hat abhängig vom spezifischen Protokoll einen der folgenden Werte: aemaccess, aemerror,
    aemrequest, aemdispatcher, aemhttpdaccess, aemhttpderror, aemcdn.
  • Wenn die erforderlichen IPs auf die Zulassungsliste gesetzt wurden und die Protokolle immer noch nicht bereitgestellt werden, stellen Sie sicher, dass keine Firewall-Regeln aktiv sind, die die Splunk-Token-Validierung erzwingen. Fastly führt einen anfänglichen Validierungsschritt durch, bei dem absichtlich ein ungültiges Splunk-Token gesendet wird. Wenn Ihre Firewall so eingestellt ist, dass Verbindungen mit ungültigen Splunk-Token beendet werden, schlägt der Validierungsprozess fehl, was Fastly daran hindert, Protokolle an Ihre Splunk-Instanz zu senden.
NOTE
Bei der Migration von der alten Protokollweiterleitung zu diesem Self-Service-Modell haben sich die Werte des Felds sourcetype, die an Ihren Splunk-Index gesendet werden, möglicherweise geändert. Passen Sie sie daher entsprechend an.

Sumo Logic sumologic

Bei der Konfiguration der Sumo-Logik für die Datenaufnahme erhalten Sie eine „HTTP Source Address“, die den Host, den Receiver-URI und den privaten Schlüssel in einer einzigen Zeichenfolge bereitstellt. Beispiel:

https://collectors.de.sumologic.com/receiver/v1/http/ZaVnC...

Sie müssen den letzten Abschnitt der URL (ohne den vorhergehenden /) kopieren und als Cloud Manager-Geheimnis-Umgebungsvariable hinzufügen, wie oben im Abschnitt Setup beschrieben, und dann in Ihrer Konfiguration auf diese Variable verweisen. Ein Beispiel wird unten angezeigt.

kind: "LogForwarding"
version: "1"
data:
  sumoLogic:
    default:
      enabled: true
      collectorURL: "https://collectors.de.sumologic.com/receiver/v1/http"
      privateKey: "${{SUMOLOGIC_PRIVATE_KEY}}"
      index: "aem-logs"
NOTE
Das Verhalten der index hängt vom Protokolltyp ab:
  • AEM-Protokolle (einschließlich Apache/Dispatcher): an die von index angegebene Partition weitergeleitet, sofern Sie über ein Sumo Logic Enterprise-Abonnement verfügen. Nicht-Enterprise-Abonnements werden stattdessen zur sumologic_default-Partition weitergeleitet.
  • CDN-Protokolle: Das index Feld wird ignoriert, da die Indizierung für CDN-Protokolle, die an Sumo Logic weitergeleitet werden, technisch nicht unterstützt wird. CDN-Protokolle werden immer an die sumologic_default-Partition weitergeleitet.
Weitere Informationen finden Sie in der Dokumentation zur Sumo Logic-Partitionierung.

CDN-Protokolle für Amazon S3, Dynatrace und New Relic (Beta) cdn-opt-in

Die CDN-Protokollweiterleitung an Amazon S3, Dynatrace und New Relic befindet sich in der Beta-Phase. Die Weiterleitung von AEM-Protokollen (einschließlich Apache/Dispatcher) an diese Ziele ist nicht betroffen und erfordert keine Anfrage.

Führen Sie beide Schritte aus, um CDN-Protokolle an eines dieser Ziele weiterzuleiten:

  1. Anfordern des Zugriffs für Ihr Programm. Senden Sie eine E-Mail 🔗0}aemcs-logforwarding-beta@adobe.com" mit Ihrer Programm-ID und den Zielen, die Sie verwenden möchten. Adobe antwortet, wenn der Zugriff für Ihr Programm aktiviert ist.
  2. Aktivieren von CDN-Protokollen für jedes Ziel. Nachdem der Zugriff aktiviert wurde, legen Sie enabled: true im cdn des Ziels in Ihrer Protokollweiterleitungskonfiguration fest und führen Sie die Konfigurations-Pipeline aus. Siehe Beispiel unten.

Beide Schritte sind erforderlich:

  • Access allein leitet keine CDN-Protokolle weiter. Bei den meisten Protokollierungszielen leitet ein aktivierter default sowohl AEM-Protokolle als auch CDN-Protokolle weiter. Für Amazon S3 (awsS3), Dynatrace (dynatrace) und New Relic (newRelic) werden CDN-Protokolle nur dann weitergeleitet wenn cdn -Block enabled: true explizit festlegt.
  • Wenn Sie cdn.enabled: true festlegen, bevor der Zugriff für Ihr Programm aktiviert ist, wird die Konfiguration ohne Fehler bereitgestellt, es werden jedoch keine CDN-Protokolle an diese Ziele weitergeleitet.

Der cdn erbt alle anderen Eigenschaften vom default Block, einschließlich der Anmeldeinformationen. enabled: true ist die einzige Eigenschaft, die Sie hinzufügen müssen:

kind: "LogForwarding"
version: "1"
data:
  newRelic:
    default:
      enabled: true
      uri: "https://log-api.newrelic.com/log/v1"
      apiKey: "${{NR_API_KEY}}"
    cdn:
      enabled: true

Für ein Programm mit -Zugriff funktioniert die Konfiguration wie folgt:

Konfiguration
AEM-Protokolle
CDN-Protokolle an Amazon S3, Dynatrace, New Relic
CDN-Protokolle zu anderen Zielen
Nur default.enabled: true
Weitergeleitet
Nicht weitergeleitet (bis 26. Januar 2027)
Weitergeleitet
default.enabled: true und cdn.enabled: true
Weitergeleitet
Weitergeleitet
Weitergeleitet
default.enabled: true und cdn.enabled: false
Weitergeleitet
Nicht weitergeleitet
Nicht weitergeleitet
default.enabled: true, aem.enabled: false und cdn.enabled: true
Nicht weitergeleitet
Weitergeleitet
Weitergeleitet

Wie bei anderen Zielen überschreiben Eigenschaften, die im cdn festgelegt sind, die Werte aus default. Um nur CDN-Protokolle weiterzuleiten, legen Sie aem.enabled: false wie in der letzten Zeile fest.

Um die Weiterleitung von CDN-Protokollen zu stoppen, legen Sie cdn.enabled: false fest und führen Sie die Konfigurations-Pipeline aus. Die CDN-Protokollweiterleitung an dieses Ziel wird angehalten, wenn die Konfiguration bereitgestellt wird. AEM-Protokolle sind davon nicht betroffen.

NOTE
Warum CDN-Protokolle für diese Ziele Opt-in sind
Viele Unternehmen haben Amazon S3, Dynatrace oder New Relic für AEM-Protokolle konfiguriert, bevor eine CDN-Protokollweiterleitung für sie verfügbar war. CDN-Protokolle enthalten einen Eintrag für jede vom CDN verarbeitete Anfrage, einschließlich der Anfragen, die aus dem CDN-Cache bereitgestellt werden, sodass sie in der Regel viel größer sind als AEM-Protokolle. Sie werden auch von anderen IP-Adressen als AEM-Protokolle gesendet (siehe Transport und erweiterte Vernetzung). Wenn Sie jetzt cdn.enabled: true benötigen, bedeutet dies, dass bestehende Konfigurationen nur AEM-Protokolle ohne unerwartete Aufnahmekosten oder Traffic weiterleiten und Ihnen Zeit zur Entscheidung geben.
IMPORTANT
Die Zugriffsanfrage und das Opt-in sind temporär. Ab Dienstag, dem 26. Januar 2027, ist keine Zugriffsanfrage erforderlich und Amazon S3, Dynatrace und New Relic folgen derselben Regel wie andere Ziele: ein aktivierter default blockiert auch die Weiterleitung von CDN-Protokollen. Um weiterhin nur AEM-Protokolle an eines dieser Ziele weiterzuleiten, legen Sie dafür cdn.enabled: false fest. Sie können ihn jetzt festlegen. Dies hat denselben Effekt vor und nach diesem Datum.

Bevor Sie CDN-Protokolle aktivieren, schätzen Sie das zusätzliche Volumen ein. Protokollieren von Anbietern, die nach aufgenommenem Volumen fakturieren, wie Dynatrace und New Relic, die für CDN-Protokolle die gleichen Gebühren berechnen wie für AEM-Protokolle.

Um Feedback zur Beta-Version zu geben, senden Sie eine E-Mail an aemcs-logforwarding-beta@adobe.com.

Protokolleintragsformate log-formats

Unter Protokollierung für AEM as a Cloud Service finden Sie das Format der jeweiligen Protokolltypen (CDN-Protokolle und AEM-Protokolle, einschließlich Apache/Dispatcher). Einige Protokollierungsziele fügen Eigenschaften in CDN-Protokolleinträgen hinzu oder ändern diese, z. B. das timestamp für New Relic. Siehe CDN-Protokolleinträge nach Protokollziel.

Da Protokolle aus mehreren Programmen und Umgebungen an dasselbe Logging-Ziel weitergeleitet werden können, sind zusätzlich zum im Logging-Artikel beschriebenen Output die folgenden Eigenschaften in jedem Protokolleintrag enthalten:

  • aem_env_id
  • aem_env_type
  • aem_program_id
  • aem_tier

Beispielsweise könnten die Eigenschaften die folgenden Werte aufweisen:

aem_env_id: 1242
aem_env_type: dev
aem_program_id: 12314
aem_tier: author

Migration von der alten Protokollweiterleitung legacy-migration

Bevor die Konfiguration der Protokollweiterleitung über ein Self-Service-Modell erfolgte, wurden Kundinnen und Kunden aufgefordert, Support-Tickets zu öffnen, damit Adobe die Integration initiierte.

Kundinnen und Kunden, deren Setup von Adobe auf diese Weise erstellt wurde, können jederzeit zum Self-Service-Modell wechseln. Es gibt mehrere Gründe für diesen Umstieg:

  • Eine neue Umgebung (z. B. eine neue Entwicklungsumgebung oder RDE) wurde bereitgestellt.
  • Änderungen an Ihrem vorhandenen Splunk-Endpunkt oder Ihren Anmeldedaten.
  • Adobe hatte die Protokollweiterleitung eingerichtet, bevor CDN-Protokolle verfügbar waren, und Sie möchten CDN-Protokolle erhalten.
  • Eine bewusste Entscheidung, proaktiv das Self-Service-Modell zu übernehmen, damit Ihr Unternehmen über das Wissen verfügt, noch bevor eine zeitkritische Änderung erforderlich ist.

Wenn Sie zur Migration bereit sind, konfigurieren Sie einfach die YAML-Datei wie in den vorherigen Abschnitten beschrieben. Verwenden Sie die Cloud Manager-Konfigurations-Pipeline, um sie in jeder Umgebung zu implementieren, in der die Konfiguration angewendet werden soll.

Es wird empfohlen, ist aber nicht erforderlich, dass eine Konfiguration in allen Umgebungen implementiert wird, damit sie alle per Self-Service gesteuert werden. Anderenfalls könnten Sie vielleicht vergessen, welche Umgebungen von Adobe und welche Umgebungen eigenständig konfiguriert wurden.

NOTE
Die Werte des Felds sourcetype, die an Ihren Splunk-Index gesendet werden, haben sich möglicherweise geändert. Passen Sie sie daher entsprechend an.
Wenn die Protokollweiterleitung in einer Umgebung implementiert wird, die zuvor vom Adobe-Support konfiguriert wurde, erhalten Sie möglicherweise einige Stunden lang doppelte Protokolle. Dies wird jedoch nach kurzer Zeit automatisch aufhören.
recommendation-more-help
experience-manager-cloud-service-help-main-toc