Comment vérifier la mémoire libre de Jenkins Build Executor?

13

Dans Jenkins, lorsque je clique sur Build Executor Status, je ne peux voir que les statistiques relatives à l'espace disque libre (URI:) /computer. Comment puis-je surveiller la mémoire système libre (RAM) dans Jenkins?

Je demande, parce que parfois, quand j'avais trop d'exécuteurs (bien que l'espace de swap soit configuré, mais pas celui ci-dessous), Jenkins gelait ou plantait beaucoup.

Jenkins at / computer - Nom, architecture, différence d'horloge, espace disque libre, espace de swap gratuit, espace temporaire libre, temps de réponse

Kenorb
la source
5
Vous pouvez trouver le plugin de surveillance utile: wiki.jenkins-ci.org/display/JENKINS/Monitoring
Assaf Lavie
2
Note latérale: un échange lourd amènera même les serveurs les plus puissants à une analyse, ralentissant tous les processus, y compris les exécuteurs Jenkins et les solutions de surveillance locales. Pour aggraver les choses: les récupérateurs de mémoire fonctionneront également lentement, alimentant davantage la condition. Pour des performances décentes, je vous conseille de conserver la taille du swap de petite taille, en s'appuyant principalement sur la taille réelle de la RAM lors du partage du même serveur pour plusieurs exécuteurs et en évitant un surabonnement important.
Dan Cornilescu

Réponses:

8

Jetez un œil au plugin Monitoring . Voici plus de détails à ce sujet (à partir de la page liée):

  • Graphiques de mémoire, processeur, moyenne de charge du système, temps de réponse http par jour, semaine, mois, année ou période personnalisée
  • Statistiques des requêtes http avec temps de réponse moyens, temps de processeur moyens, taille moyenne de réponse par requête et par jour, semaine, mois, année ou période personnalisée
  • Erreurs et journaux
  • Demandes http actuelles
  • Fils
  • Histogramme du tas (instances et tailles par classe)
  • Sessions HTTP
  • Liste de processus d'OS
  • MBeans
  • Actions pour GC, vidage de tas et invalidation de session (s)
  • Rapport en html ou pdf
  • En anglais, allemand, français, portugais ou chinois
  • Sécurité Jenkins
  • Pour les nœuds Jenkins (esclaves en général):
    • Le rapport pour les nœuds est disponible à l'adresse http://yourhost/monitoring/nodes
    • Graphiques agrégés pour tous les nœuds de mémoire, processeur, moyenne de charge du système, nombre de builds en cours d'exécution, longueur de la file d'attente de build, temps de build par période
    • Statistiques détaillées des temps de construction et des étapes de construction par période
    • Threads, liste de processus et MBeans pour chaque noeud
    • Histogramme de tas agrégé pour tous les nœuds
  • Pour chaque nœud individuel (chaque nœud http://yourhost/computer), les rapports et actions sont disponibles à partir de la page "Surveillance" dans le menu contextuel ou dans le détail du nœud:
    • Threads, liste de processus, MBeans de ce nœud uniquement
    • Histogramme de tas de ce nœud
    • Actions pour GC, vidage de tas
  • Et plus...

Crédits: Assaf Lavie (qui l'a mentionné pour la première fois dans un commentaire, mais pour une raison quelconque, n'a pas posté cela comme une réponse réelle ...).

Pierre.Vriens
la source
5

En ce qui concerne la solution de contournement, la mémoire réelle peut être vérifiée en appelant les commandes Groovy directement dans Script Console (at /computer/(master)/script). Exemple de commande:

println "free -m".execute().text
Kenorb
la source
2
Commande alternative: awk '/MemFree:/ { print $2}' /proc/meminfopour ko sans RAM uniquement ou alternative pour mémoire et échange:awk '/(Mem|Swap)Free:/ { print }' /proc/meminfo
Tensibai
Je ne sais pas si les scripts awk peuvent être exécutés via la console de script Jenkins. Comme je peux le voir, la console de script Jenkins est pour Groovy uniquement
olyv