Si vous rencontrez des problèmes lors de la configuration des emplacements privés pour le monitoring synthétique de New Relic, essayez ces conseils de dépannage pour identifier les problèmes courants du Synthetics Job Manager.
Demande d'emploi et consommation
Identifiez votre débit actuel et évaluez si votre gestionnaire de tâches est capable de suivre la charge de travail.
Les tâches nécessitent un débit par minute :
SELECT rate(uniqueCount(jobId), 1 minute) FROM SyntheticRequestWHERE type != 'SIMPLE' FACET location SINCE 2 days agoEmplois par minute au fil du temps :
SELECT rate(uniqueCount(jobId), 1 minute) FROM SyntheticRequestWHERE type != 'SIMPLE' FACET location SINCE 2 weeks ago TIMESERIESIdentifier la croissance de la file d’attente :
SELECT derivative(checksPending, 1 minute) AS 'queue growth rate (per minute)'FROM SyntheticsPrivateLocationStatus WHERE name = 'YOUR_PRIVATE_LOCATION' SINCE 2 days ago TIMESERIESTaux de consommation :
SELECT rate(uniqueCount(jobId), 1 minute) FROM SyntheticRequestWHERE type != 'SIMPLE' FACET location SINCE 2 weeks ago TIMESERIESNettoyer les moniteurs défaillants qui consomment des ressources :
SELECT 100*latest(minionJobsFailed)/latest(minionJobsReceived) AS 'job failure rate (%)'FROM SyntheticsPrivateMinion FACET minionLocation SINCE 2 weeks ago TIMESERIES MAX
dépannage utilisation mémoire
Allocation de mémoire recommandée par gestionnaire de tâches Synthetics :
Docker: 3,256 Gio par cœur de processeur pour le gestionnaire de tâches Docker Synthetics
Gestionnaire de tâches Kubernetes Synthetics (les valeurs sont configurables) :
- 1,6 Gio pour le pod du gestionnaire de tâches
- 1,0 Gio pour le pod d'exécution ping
- 2 Gio par pod d'exécution d'API Node.js
- 3 Gio par pod d'exécution de navigateur Node.js
cible 60% d'utilisation maximale de la mémoire
Requête utile pour identifier l'utilisation actuelle :
Utilisation de la mémoire par emplacement :
SELECT latest(minionPhysicalMemoryUsedPercentage) FROM SyntheticsPrivateMinionFACET minionLocation SINCE 2 weeks ago TIMESERIES MAXUtilisation de la mémoire par nom d'hôte :
SELECT latest(minionPhysicalMemoryUsedPercentage) FROM SyntheticsPrivateMinionWHERE minionLocation = 'YOUR_PRIVATE_LOCATION' FACET minionHostname SINCE 2 weeks ago TIMESERIES MAX
Dépannage d'utilisation du processeur
Identifier les périodes potentielles de forte demande de CPU :
Utilisation globale du processeur :
SELECT latest(minionProcessorsUsagePercentage) FROM SyntheticsPrivateMinionFACET minionLocation SINCE 2 weeks ago TIMESERIES MAXUtilisation du processeur pour un emplacement spécifié :
SELECT latest(minionProcessorsUsagePercentage) FROM SyntheticsPrivateMinionWHERE minionLocation = 'YOUR_PRIVATE_LOCATION' FACET minionHostname SINCE 2 weeks ago TIMESERIES MAX
Dépannage réseau
Network access is red:
Le Synthetics Job Manager effectue une vérification auprès de New Relic pour vérifier l'accès au réseau public. Si l'accès au réseau public n'est pas disponible, l'icône Network Access sur la page Overview du Synthetics Job Manager passera au rouge, mais le Synthetics Job Manager restera par ailleurs entièrement fonctionnel. Si c'est le comportement attendu, vous pouvez ignorer cette erreur sans risque.
Vous pouvez également voir des entrées log comme celles-ci :
2016-01-21 21:47:09,401 [dw-22 - GET /private-location/status] c.n.s.m.util.PrivateMinionUtils WARN Unable to detect Public Network Access trying to fetch https://newrelic.com/synthetics: java.net.ConnectException: Connection refusedNew Relic access is red:
Le gestionnaire de tâches Synthetics doit avoir accès à https://synthetics-horde.nr-data.net pour récupérer la liste des tâches à exécuter et publier les résultats que vous pouvez consulter dans votre interface utilisateur New Relic. Si vos règles de pare-feu n'autorisent pas l'accès direct, vous pouvez configurer un accès proxy. Si nécessaire, ajoutez le point de terminaison DNS synthetics-horde.nr-data.net à votre liste d'autorisation.
Conflits de ports exécutant le conteneur Docker sur l'hôte
Si vous exécutez plusieurs conteneurs de gestionnaire de tâches sur le même hôte, vous rencontrerez des conflits de ports et une contention des ressources. Pour éviter cela, veillez à exécuter chaque gestionnaire de tâches sur un hôte distinct.