L'intégration de Varnish Cache sur hôte collecte et envoie l'inventaire et les métriques de votre environnement Varnish Cache à New Relic afin que vous puissiez monitorer son état de santé. Nous collectons des métriques aux niveaux de l'instance, du verrouillage, du pool de mémoire, du stockage et du backend.
Lisez la suite pour installer l’intégration et voir quelles données nous collectons.
Compatibilité et exigences
Notre intégration est compatible avec Varnish Cache 1.0 ou supérieur.
Avant d’installer l’intégration, assurez-vous que vous répondez aux exigences suivantes :
- Installez l'agent d'infrastructure.
- Distribution Linux ou version Windows compatible avec notre agent d'infrastructure.
Démarrage rapide
instrumentez votre environnement Varnish Cache rapidement et envoyez vos données télémétriques avec installation guidée. Notre installation guidée crée une commande CLI personnalisée pour votre environnement qui télécharge et installe la CLI New Relic et l'agent d'infrastructure.
Prêt à commencer ? Cliquez sur l'un de ces boutons pour l'essayer.
Notre installation guidée utilise l'agent d'infrastructure pour configurer l'intégration de Varnish Cache. De plus, il détecte d’autres applications et sources log exécutées dans votre environnement, puis recommande celles que vous devez intrumenter.
L'installation guidée fonctionne avec la plupart des configurations. Mais si cela ne répond pas à vos besoins, vous pouvez trouver d'autres méthodes ci-dessous pour commencer monitoring votre environnement Varnish Cache.
Installer et activer
Pour installer l’intégration de Varnish Cache :
Notes supplémentaires :
- Advanced: Il est également possible d'installer l'intégration à partir d'un fichier tarball. Cela vous donne un contrôle total sur le processus d'installation et de configuration.
- On-host integrations do not automatically update. Pour de meilleurs résultats, mettez régulièrement à jour le package d'intégration et l'agent d'infrastructure.
Ce document vous a-t-il aidé lors de votre installation ?
Configurer l'intégration
La configuration au format YAML d'une intégration est l'endroit où vous pouvez placer les informations de connexion requises et configurer la manière dont les données sont collectées. Les options que vous modifiez dépendent de votre configuration et de vos préférences.
Le fichier configuration contient des paramètres communs applicables à toutes les intégrations telles que interval
, timeout
, inventory_source
. Pour tout savoir sur ces paramètres courants, reportez-vous à notre document Format de configuration .
Important
Si vous utilisez toujours nos legacy fichiers configuration/définition, veuillez vous référer à ce document pour obtenir de l'aide.
Les paramètres spécifiques liés à Varnish sont définis à l'aide de la section env
du fichier de configuration. Ces paramètres contrôlent la connexion à votre Varnish instance, ainsi que d'autres paramètres et fonctionnalités de sécurité. La liste des paramètres valides est décrite dans la section suivante.
Varnish instance Paramètres de cache de
L'intégration de Varnish Cache collecte à la fois les informations de métriques (M) et d'inventaire (I). Consultez la colonne Applies To ci-dessous pour savoir quels paramètres peuvent être utilisés pour chaque collection spécifique :
' '
Paramètre | Description | Défaut | S'applique à |
---|---|---|---|
INSTANCE_NAME | Nom défini par l'utilisateur pour identifier les données de cette instance dans New Relic. Required. | N/A | MI |
PARAMS_CONFIG_FILE | L'emplacement du fichier de configuration
| N/A | je |
VARNISH_NAME | Nom utilisé lors de l'exécution du daemon | N/A | M |
METRICS | Définissez sur |
| |
INVENTORY | Définissez sur |
|
Les commandes varnish-config.yml
acceptent les arguments suivants :
Les valeurs de ces paramètres peuvent être définies de plusieurs manières :
- Ajout de la valeur directement dans le fichier de configuration. C'est la manière la plus courante.
- Remplacement des valeurs des variables d’environnement à l’aide de la notation
{{}}
. Cela nécessite l'agent d'infrastructure v1.14.0+. Lire la suite ici. - Utilisation de la gestion des secrets. Utilisez ceci pour protéger les informations sensibles, telles que les mots de passe qui seraient exposés en texte brut dans le fichier de configuration. Pour plus d'informations, voir Gestion des secrets.
Étiquettes/attributs personnalisés
Les variables d'environnement peuvent être utilisées pour contrôler les paramètres de configuration, tels que votre , et sont ensuite transmises à l'agent d'infrastructure. Pour obtenir des instructions sur l’utilisation de cette fonctionnalité, consultez Configurer l’agent d’infrastructure. Vous pouvez également décorer vos métriques à l’aide d’étiquettes. Les étiquettes vous permettent d'ajouter des paires valeur-clé à vos métriques que vous pouvez ensuite utiliser pour interroger, filtrer ou regrouper vos métriques.
Notre fichier de configuration d'exemple par défaut inclut des exemples d'étiquettes mais, comme ils ne sont pas obligatoires, vous pouvez supprimer, modifier ou ajouter de nouvelles étiquettes de votre choix.
labels: env: production role: varnish
Exemple de configuration
Exemple de configuration de fichier varnish-config.yml
:
Pour en savoir plus sur la structure générale de l'intégration sur hôte configuration, voir configuration.
Rechercher et utiliser des données
Pour trouver vos données d’intégration dans New Relic, accédez à one.newrelic.com > All capabilities > Infrastructure > Third-party services et sélectionnez l’un des liens d’intégration Varnish Cache.
Dans New Relic, les données du cache Varnish sont attachées au type d'événement suivant :
VarnishSample
VarnishLockSample
VarnishStorageSample
VarnishMempoolSample
VarnishBackendSample
Pour en savoir plus sur la recherche et l’utilisation de vos données, consultez Comprendre les données d’intégration.
données métriques
L'intégration Varnish Cache collecte l'attribut de données métriques suivant. Chaque nom de métrique est préfixé par un indicateur de catégorie et un point, tel que bans.
ou main.
.
Conseil
Un certain nombre de métriques sont calculées sous forme de taux (par seconde) au lieu de totaux comme les noms des métriques pourraient le suggérer. Pour plus de détails sur les métriques calculées en tant que taux, reportez-vous au fichier spec.csv.
Échantillon de Varnish métriques
Ces attributs peuvent être trouvés en interrogeant les types d'événements VarnishSample.
métrique | Description |
---|---|
| Nombre de fois où la connexion maximale a été atteinte. |
| Nombre de connexions échouées au serveur sauvegardé. |
| Nombre de connexions backend qui ont été recyclées. |
| Nombre de connexions backend qui ont été retentées. |
| Nombre de réutilisations de connexions backend. |
| Nombre de connexions backend réussies, |
| Nombre de connexions backend qui n'ont pas été tentées en raison d'un statut backend « malsain ». |
| Nombre total de récupérations backend initiées. |
| Nombre total de de backend connexion requests effectuées. |
| Compteur d'interdictions ajouté à la liste des interdictions. |
| Nombre d'interdictions marquées comme « terminées ». |
| Nombre d'objets tués par des interdictions pour coupure (lurker). |
| Compteur d'interdictions supprimées de la liste des interdictions. |
| Nombre d'interdictions remplacées par des interdictions ultérieures identiques. |
| Octets supplémentaires dans les listes d'interdiction persistantes en raison de la fragmentation. |
| Nombre d'objets tués par des interdictions lors de la recherche d'objets. |
| Nombre de tests et d'objets testés les uns par rapport aux autres pendant la recherche. |
| Nombre de fois où le ban-lurker a dû attendre des recherches. |
| Nombre d'objets tués par le ban-lurker. |
| Compte du nombre d'interdictions et d'objets testés les uns contre les autres par le ban-lurker. |
| Compte du nombre de tests et d'objets testés les uns contre les autres par le ban-lurker. |
| Nombre d'interdictions utilisant |
| Octets utilisés par les listes d'interdiction persistantes. |
| Nombre d'interdictions qui utilisent |
| Nombre d'interdictions et d'objets testés les uns contre les autres lors de la recherche Hacher. |
| Compte de taux d'accès au cache avec grâce. Un taux d'accès au cache avec grâce est un taux d'accès au cache où l'objet est expiré. Ces hits sont également inclus dans le compteur |
| Nombre de fois qu'un objet a été livré à un client sans être récupéré auprès d'un serveur backend. |
| Nombre de fois où l'objet a été récupéré depuis le backend avant de le livrer au client. |
| Nombre de fois qu'un objet touché a été renvoyé pour une réponse manquée. |
| Nombre de fois qu'un objet touché a été renvoyé pour une réponse de réussite. |
| Erreurs d'analyse Edge Side Included (ESI) (déverrouillage). |
| Avertissements d'analyse Edge Side Included (ESI) (déverrouillage). |
| La longueur/récupération |
| Le |
| Le |
| Le |
| Le |
| Le |
| Le |
| Le |
| Le |
| Le |
| La récupération |
| Nombre d'inserts de hachage basés sur l'arbre de bits critiques (HCB). |
| Nombre de recherches HCB avec verrou. |
| Nombre de recherches HCB sans verrou. |
| Un nombre de fois plus d'espace de stockage était nécessaire, mais la limite a été atteinte. |
| Nombre d'opérations de déplacement effectuées sur la liste LRU. |
| Nombre d'objets les moins récemment utilisés (LRU) expulsés de force du stockage pour faire de la place à un nouvel objet. |
| Nombre de backend. |
| Nombre d'interdictions. |
| Nombre de requests tuées après une mise en veille sur un objhdr occupé. |
| Nombre de requests envoyées pour dormir sur un objhdr occupé. |
| Nombre de requests réveillées après une mise en veille sur un objhdr occupé. |
| Nombre d'objets expirés. |
| Nombre d'objets envoyés au fil d'expiration. |
| Nombre d'objets reçus par thread d'expiration. |
| Nombre d'opérations gunzip. |
| Nombre d'opérations de test gunzip. |
| Nombre d'opérations gzip. |
| Nombre de structures objectcore créées. |
| Nombre de structures objectées créées. |
| Nombre de structures d'objets créées. |
| Nombre total requests passées vues. |
| Nombre total de séances de pipes observées. |
| Nombre de pools de threads. |
| Nombre d'objets purgés. |
| Nombre d'opérations de purge exécutées. |
| Nombre de requests abandonnées. |
| Nombre total de séances vues. |
| Durée de la file d'attente de session en attente de threads. |
| Nombre de fois où les statistiques par thread ont été additionnées dans les compteurs globaux. |
| Réponses synthétiques totales réalisées. |
| Nombre total de threads. |
| Nombre total de threads créés dans tous les pools. |
| Nombre total de threads détruits dans tous les pools. |
| Nombre de fois où la création d'un thread a échoué. |
| Nombre de fois où davantage de threads ont été nécessaires, mais la limite a été atteinte dans un pool de threads. |
| Nombre d'objets non ressuscités. |
| Le temps de disponibilité du processus enfant, en millisecondes. |
| Nombre de langages de configuration Varnish (VCL) disponibles. |
| Nombre de VCL rejetés. |
| Nombre d'échecs VCL. |
| Nombre total de VCL chargés. |
| Nombre de modules Varnish chargés (VMOD). |
| Nombre de fois où le processus enfant est mort à cause de signaux. |
| Nombre de fois où le processus enfant a produit des vidages de mémoire. |
| Nombre de fois où le processus enfant a été arrêté proprement. |
| Nombre de fois où le processus de gestion a pris un enfant en panique. |
| Nombre de fois que le processus enfant a été démarré. |
| Nombre de fois où le processus enfant a été arrêté proprement. |
| Le temps de disponibilité du processus de gestion, en millisecondes. |
| Nombre de requests clients reçues, sujettes à 400 erreurs. |
| Nombre de requests clients reçues, sujettes à des erreurs 417 |
| Nombre de débordements d'en-tête HTTP. |
| Nombre total d'octets transmis par les clients dans les sessions de pipeline. |
| Nombre total d'octets transmis aux clients dans les sessions de pipeline. |
| Nombre total d'octets de demande reçus pour les sessions canalisées. |
| Corps total de la requête transmis, en octets. |
| Nombre total d'en-têtes de requête transmis, en octets. |
| Nombre de bonnes requests de clients reçues. |
| Corps total de la réponse transmis, en octets. |
| Nombre total d'en-têtes de réponse transmis, en octets. |
| Nombre de sessions fermées avec l'erreur |
| Nombre de sessions fermées avec l'erreur |
| Nombre de sessions fermées avec l'erreur |
| Nombre de sessions fermées avec l'erreur |
| Nombre de sessions fermées avec l'erreur |
| Nombre total de sessions clôturées. |
| Nombre total de sessions fermées avec des erreurs. |
| Nombre de sessions abandonnées pour le thread. |
| Nombre de sessions fermées avec l'erreur |
| Nombre de sessions fermées avec l'erreur |
| Nombre de fois que le |
| Nombre de sessions fermées avec l'erreur |
| Nombre de sessions fermées avec l'erreur |
| Nombre de sessions fermées avec l'erreur |
| Nombre de sessions fermées avec l'erreur |
| Nombre de sessions fermées avec l'erreur |
| Nombre de sessions en file d'attente pour le thread. |
| Session à lire à l'avance. |
| Nombre de sessions fermées avec l'erreur |
| Nombre de sessions fermées avec l'erreur |
| Nombre de sessions fermées avec l'erreur |
| Nombre de sessions fermées avec l'erreur |
| Nombre de sessions fermées avec l'erreur |
| Nombre de sessions acceptées avec succès. |
| Le nombre de sessions a été supprimé silencieusement en raison du manque de thread de travail. |
| Nombre d'échecs d'acceptation de connexion TCP. |
| Nombre de conflits de mémoire partagée (SHM) MTX. |
| Nombre de cycles SHM dans la mémoire tampon. |
| Nombre de chasses d'eau SHM dues à un débordement. |
| Nombre d'enregistrements SHM. |
| Nombre d'écritures SHM. |
| Nombre de fois où nous avons manqué d'espace dans |
| Nombre de fois où nous avons manqué d'espace dans |
| La livraison a échoué en raison d'un espace de travail insuffisant. |
| Nombre de fois où nous avons manqué d'espace dans |
| Nombre de fois où nous avons manqué d'espace dans |
Échantillon de mèches de Varnish métriques
Ces attributs peuvent être trouvés en interrogeant le type d'événement VarnishLockSample
.
métrique | Description |
---|---|
| Nombre de verrous créés. |
| Nombre de serrures détruites. |
| Nombre d'opérations de verrouillage. |
Métriques d'échantillons de stockage Varnish
Ces attributs peuvent être trouvés en interrogeant le type d'événement VarnishStorageSample
.
métrique | Description |
---|---|
| Nombre de fois où le stockage n'a pas réussi à fournir un segment de stockage. |
| Nombre total d'octets alloués par ce stockage. |
| Nombre d'allocations de stockage en attente. |
| Nombre de fois où le stockage a été invité à fournir un segment de stockage. |
| Nombre d'octets restants dans le stockage. |
| Nombre total d'octets renvoyés vers ce stockage. |
| Nombre d'octets alloués à partir du stockage. |
Varnish mempool sample métriques
Ces attributs peuvent être trouvés en interrogeant le type d'événement VarnishMempoolSample
.
métrique | Description |
---|---|
| Taille allouée du pool de mémoire, en octets. |
| Allocations de pool de mémoire. |
| Nombre de pools de mémoire libres. |
| Nombre de pools de mémoire utilisés. |
| Compter dans le pool de mémoire. |
| La piscine est à sec. |
| Recyclé de la piscine. |
| Taille de la demande du pool de mémoire, en octets. |
| Trop nombreux pour la piscine. |
| Délai d'attente pour la piscine. |
| Trop petit pour être recyclé. |
Varnish backend Exemples de mesures
Ces attributs peuvent être trouvés en interrogeant le type d'événement VarnishBackendSample
.
métrique | Description |
---|---|
| Les récupérations n'ont pas été tentées car le backend est occupé. |
| Nombre de connexions simultanées au backend. |
| Nombre de connexions backend ayant échoué. |
| Nombre de connexions backend non tentées. |
| Bonnes sondes de santé. |
| Les récupérations n'ont pas été tentées en raison d'un backend défectueux |
| Nombre total d'octets de demande envoyés pour les sessions canalisées. |
| Nombre total d'octets transférés depuis le backend dans les sessions de pipeline. |
| Nombre total d'octets transmis au backend dans les sessions de pipeline. |
| Nombre total d'octets envoyés dans le corps de la requête backend. |
| Nombre total d'octets d'en-tête de requête backend envoyés. |
| Nombre de backend requests envoyées, |
| Nombre total d'octets du corps de réponse du backend reçus. |
| Nombre total d'octets d'en-tête de réponse backend reçus. |
Données d'inventaire
L'intégration de Varnish Cache capture les paramètres de configuration. Il analyse le fichier de configuration varnish.params
pour tous les paramètres actifs.
Les données sont disponibles sur la page Inventaire, sous la source config/varnish . Pour en savoir plus sur les données d’inventaire, consultez Comprendre les données d’intégration.
Vérifiez le code source
Cette intégration est un logiciel open source. Cela signifie que vous pouvez parcourir son code source et envoyer des améliorations, ou créer votre propre fork et le construire.