> ## Documentation Index
> Fetch the complete documentation index at: https://docs.qwairy.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Fastly HTTPS Logging

> Configurez un point de terminaison Fastly HTTPS Logging borné pour Analytics des crawlers.

Utilisez Fastly HTTPS Logging pour livrer un enregistrement de requête minimal depuis un service CDN Fastly vers Analytics des crawlers.

## Avant de commencer

Il vous faut :

* l’autorisation de modifier et d’activer le service Fastly cible ;
* un service qui sert le nom d’hôte configuré pour la marque Qwairy ;
* un accès à **Measure > Analytics des crawlers > Paramètres** ;
* un endroit sûr pour conserver le secret du connecteur, affiché une seule fois.

## Créer et protéger la clé

1. Dans les paramètres d’Analytics des crawlers, sélectionnez **Fastly**.
2. Sélectionnez **Créer une clé**.
3. Saisissez un nom et le fuseau horaire IANA utilisé pour les instantanés quotidiens.
4. Copiez le secret lorsqu’il apparaît. Il ne pourra plus être affiché.
5. Conservez-le uniquement dans la valeur d’en-tête personnalisé de Fastly ou dans un autre coffre de secrets restreint.

Pour renouveler la clé, créez une clé de remplacement, mettez à jour le point de terminaison Fastly, activez la nouvelle version du service, confirmez la livraison, puis supprimez l’ancienne clé. Une intégration peut avoir jusqu’à cinq clés actives.

## Configurer le point de terminaison HTTPS

1. Dans le service Fastly cible, ajoutez un point de terminaison de logging **HTTPS**.

2. Définissez l’URL de livraison sur :

   ```text theme={null}
   https://www.qwairy.co/api/v1/logs/fastly
   ```

3. Fastly valide la propriété du domaine via ce point de terminaison public de challenge :

   ```text theme={null}
   https://www.qwairy.co/.well-known/fastly/logging/challenge
   ```

   Le challenge n’autorise que la validation du domaine. La livraison des logs exige toujours la clé du connecteur.

4. Utilisez `POST`, définissez le type de contenu sur `application/json` et ajoutez cet en-tête personnalisé :

   ```text theme={null}
   X-API-Key: YOUR_CRAWLER_KEY
   ```

5. Laissez **Message type** vide.

6. Définissez **Request max entries** sur `10000` et **Request max bytes** sur `2000000`.

7. Choisissez un tableau JSON ou du JSON délimité par des retours à la ligne. La compression gzip est prise en charge.

## Utiliser le format de log minimal

Collez ce format dans le point de terminaison HTTPS Logging :

```text theme={null}
{
  "timestamp": "%{strftime(\{"%Y-%m-%dT%H:%M:%S.000Z"\}, time.start)}V",
  "host": "%{json.escape(req.http.Host)}V",
  "request_path": "%{json.escape(req.url.path)}V",
  "request_method": "%{json.escape(req.method)}V",
  "request_user_agent": "%{json.escape(req.http.User-Agent)}V",
  "response_status": %{resp.status}V
}
```

Ce format omet l’adresse du client, la chaîne de requête, les cookies et le référent. Si votre service Fastly dispose déjà d’une condition sur les user agents de crawlers d’IA connus, appliquez-la avant la livraison. Qwairy effectue toujours la classification de référence à la réception.

Activez la version mise à jour du service en Production. Consultez [Fastly HTTPS log streaming](https://www.fastly.com/documentation/guides/integrations/logging-endpoints/protocol-based-and-self-hosted/log-streaming-https/) pour les réglages actuels du fournisseur.

## Tester la livraison

Vérifiez d’abord que Fastly accepte le challenge de contrôle du domaine. Demandez ensuite un chemin sans risque sur le nom d’hôte suivi :

```bash theme={null}
curl --head --user-agent "GPTBot/1.0" "https://www.example.com/docs/crawler-check"
```

Vérifiez l’état de livraison du point de terminaison dans Fastly. Qwairy fait quitter l’état en attente au connecteur dès qu’une ligne de log acceptée atteint le pipeline d’agrégation ; un challenge réussi ne suffit pas à le connecter.

## Limites, filtrage et coût

* Gardez les limites de requête configurées à 10 000 entrées et 2 000 000 octets.
* Qwairy accepte les tableaux JSON, le NDJSON et gzip pour cette route, et découpe les livraisons valides en lots internes bornés.
* Un filtrage en amont réduit le volume livré. Un échantillonnage ou une condition qui omet des requêtes de crawlers rend les comptes partiels pour le périmètre exclu.
* Sans condition en amont, Fastly transmet les autres requêtes et Qwairy les écarte à la réception. Ces lignes peuvent tout de même peser sur le volume de livraison et le coût du fournisseur.
* Les plafonds d’ingestion quotidienne partagés s’appliquent aussi.

## Dépannage

* **La validation du point de terminaison échoue** : vérifiez que l’URL utilise `www.qwairy.co` et que Fastly peut joindre le chemin de challenge well-known affiché.
* **401** : vérifiez le nom exact de l’en-tête `X-API-Key` et le secret actuel du connecteur Fastly.
* **413** : rétablissez le maximum de 2 000 000 octets par requête ou réduisez la taille des livraisons.
* **Les logs sont rejetés ou ignorés** : laissez Message type vide, utilisez du JSON ou du NDJSON valide, et conservez les champs d’horodatage, d’hôte, de chemin, de méthode, de User-Agent et de statut du format minimal.
* **Qwairy reste en attente** : activez la version du service et générez une requête `GET` ou `HEAD` récente avec un User-Agent de crawler reconnu sur le nom d’hôte configuré.

## Page associée

* [Analytics des crawlers](/fr/documentation/measure/crawler-analytics)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.