Skip to main content
🔐 Stuur geen Persoonlijk Identificeerbare Informatie (PII) naar AppSignal. Filter PII (bijv. namen, e-mailadressen) uit logs en gebruik in plaats daarvan een ID, hash of gepseudonimiseerde identificator.

Voor onder HIPAA vallende entiteiten vindt u meer informatie over het ondertekenen van een Business Associate Agreement (BAA) in onze documentatie over Business Add-Ons.
Voer de volgende stappen uit om CloudWatch-logs naar AppSignal te sturen via Amazon Data Firehose (voorheen Kinesis Data Firehose):
  1. Een logbron aanmaken
  2. Een S3-bucket opzetten voor mislukte afleveringen
  3. Een IAM-rol opzetten voor Data Firehose
  4. Een Firehose delivery stream aanmaken
  5. Een IAM-rol opzetten voor CloudWatch
  6. Een CloudWatch log subscription aanmaken
Houd voordat u begint de volgende informatie bij de hand:
  • De API-sleutel van uw logbron. Als u nog geen logbron heeft, maak dan eerst een nieuwe logbron aan.
  • AWS-account-ID
  • AWS-regio
  • Naam van de S3-bucket voor opslag van mislukte afleveringen
  • Naam van de Data Firehose-stream
  • IAM-rolnaam voor de S3-bucket
  • IAM-rolnaam voor de CloudWatch-subscription

Een logbron aanmaken

Maak een logbron aan voordat u verder gaat. Zie Logging-configuratie voor instructies.

Een S3-bucket opzetten voor mislukte afleveringen

Amazon Data Firehose vereist een S3-bucket om records op te slaan die niet worden afgeleverd. Maak een S3-bucket aan via de AWS Console of CLI voordat u verder gaat; u kunt geen Firehose delivery stream aanmaken zonder bucket.

Een IAM-rol opzetten voor Data Firehose

Maak een IAM-rol aan waarmee Data Firehose naar de S3-bucket kan schrijven en, optioneel, naar CloudWatch Logs voor het loggen van aflever-fouten. Gebruik de volgende trust policy:
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "firehose.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
Wijs de volgende permissions policy als inline policy aan de rol toe.
Zie IAM-identiteitsmachtigingen toevoegen voor instructies over het aanmaken van inline-policies voor IAM-rollen.
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:AbortMultipartUpload",
        "s3:GetBucketLocation",
        "s3:GetObject",
        "s3:ListBucket",
        "s3:ListBucketMultipartUploads",
        "s3:PutObject"
      ],
      "Resource": [
        "arn:aws:s3:::<FIREHOSE_S3_BUCKET>",
        "arn:aws:s3:::<FIREHOSE_S3_BUCKET>/*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": ["logs:PutLogEvents"],
      "Resource": [
        "arn:aws:logs:<AWS_REGION>:<AWS_ACCOUNT_ID>:log-group:<FIREHOSE_LOG_GROUP>:*"
      ]
    }
  ]
}
Vervang de placeholders door uw eigen waarden:
  • <AWS_ACCOUNT_ID> — uw AWS-account-ID.
  • <AWS_REGION> — de regio waarin uw Firehose-stream wordt uitgevoerd.
  • <FIREHOSE_S3_BUCKET> — de S3-bucket die u in de vorige stap heeft aangemaakt.
  • <FIREHOSE_LOG_GROUP> — de loggroep die Firehose gebruikt voor zijn eigen aflever-foutlogs (los van de loggroep die u naar AppSignal wilt streamen). AWS gebruikt de conventie /aws/kinesisfirehose/<FIREHOSE_STREAM_NAME>, dus bepaal nu de naam van uw Firehose-stream — u hergebruikt deze in de volgende stap. Als u geen foutlogging op de Firehose-stream wilt inschakelen, kunt u de logs:PutLogEvents-statement volledig weglaten.
Zie Controlling access with Amazon Data Firehose voor meer informatie over de rechten die Data Firehose vereist.

Een Firehose delivery stream aanmaken

  1. Open de Amazon Data Firehose-console en selecteer Create Firehose stream.
  2. Selecteer Direct PUT als source.
  3. Selecteer HTTP Endpoint als bestemming.
  4. Laat onder “Transform records” datatransformatie uitgeschakeld.
  5. Voer de volgende URL in als HTTP endpoint URL:
https://appsignal-endpoint.net/logs/aws-kinesis
  1. Voer de AppSignal-logbron-API-sleutel in van het aanmaken van een logbron als de Access key. Dit is een AppSignal-sleutel, geen AWS access key.
  2. Schakel onder “Content encoding” GZIP in.
  3. Selecteer onder “Backup settings” de S3-bucket die u in de vorige stap heeft aangemaakt.
  4. Selecteer onder “Advanced settings > Service access” de optie Choose existing IAM role en kies de IAM-rol die u in de vorige stap heeft aangemaakt.
  5. (Optioneel) Schakel onder “Advanced settings > Amazon CloudWatch error logging” error logging in om gebruik te maken van de logs:PutLogEvents-rechten die u in de vorige stap heeft verleend.
  6. Gebruik dezelfde Firehose-streamnaam waarnaar u verwees bij het opzetten van de IAM-rol en selecteer vervolgens Create Firehose stream.
Om de verbinding te verifiëren kunt u de knop Test with demo data in de Firehose-console gebruiken. De stock-ticker-JSON-payloads die het verstuurt verschijnen in AppSignal onder Logging als afzonderlijke logregels — een handige end-to-end-controle voordat u echte loggroepen koppelt. U kunt ook DeliveryToHttpEndpoint.Success zien stijgen op het tabblad Monitoring van de Firehose-stream.

Een IAM-rol opzetten voor CloudWatch

Maak een IAM-rol aan waarmee CloudWatch logs naar de Firehose delivery stream kan sturen. Gebruik de volgende trust policy:
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": { "Service": "logs.<AWS_REGION>.amazonaws.com" },
      "Action": "sts:AssumeRole"
    }
  ]
}
Wijs de volgende permissions policy als inline policy aan de rol toe.
Zie IAM-identiteitsmachtigingen toevoegen voor instructies over het aanmaken van inline-policies voor IAM-rollen.
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": ["firehose:*"],
      "Resource": [
        "arn:aws:firehose:<AWS_REGION>:<AWS_ACCOUNT_ID>:deliverystream/<FIREHOSE_DELIVERY_STREAM>"
      ]
    }
  ]
}
Vervang <AWS_REGION>, <AWS_ACCOUNT_ID> en <FIREHOSE_DELIVERY_STREAM> door uw eigen waarden.

Een CloudWatch log subscription aanmaken

  1. Navigeer in de CloudWatch-console naar de loggroep waarvan u de logs wilt streamen.
  2. Open het tabblad Subscription filters.
  3. Selecteer Create Amazon Data Firehose subscription filter.
  4. Kies de Firehose delivery stream uit stap 4 en de IAM-rol uit stap 5.
  5. Voer een Subscription filter name in en selecteer Start streaming.
Nadat u de subscription heeft opgeslagen, verschijnen logs in AppSignal onder de logbron die u hierboven heeft geconfigureerd. Als u een fout ziet bij het opslaan van de subscription, controleer dan of de IAM-rol in stap 5 de juiste regio, account-ID en naam van de delivery stream gebruikt. Als logs niet in AppSignal verschijnen:
  • Open het tabblad Monitoring van uw Firehose-stream en controleer DeliveryToHttpEndpoint.Success. De waarde moet rond 1 blijven; een daling of nul wijst erop dat AppSignal records weigert.
  • Controleer de S3-foutbucket uit stap 2. Mislukte records komen daar terecht en elk object bevat de reden van de weigering.
  • Als records mislukken met een autorisatiefout, controleer dan of de Access key op de Firehose-stream overeenkomt met uw AppSignal-logbron-API-sleutel.
Komt u er nog steeds niet uit, neem dan contact met ons op voor ondersteuning.