Puncte:0

Cum se scriu statistici Docker în jurnale?

drapel cn

Folosesc pluginul docker logging pentru a trimite jurnalele la stocare. Acum vreau să stochez nu numai jurnalele de aplicații, ci și statisticile containerului docker (ieșirea comenzii statistici: CPU, MEM etc.) colectate la fiecare câteva secunde.

Există o modalitate de a configura docker/docker-compose pentru a scrie statisticile containerului în aceeași ieșire ca și jurnalele?

Puncte:0
drapel cn

Nu am găsit o modalitate încorporată de a include statisticile containerului în jurnalul containerului, dar o parte din soluția noastră ar putea să vă aducă parțial acolo:

Avem un job CRON pe gazda Docker care execută acest script în fiecare minut, rezultând un jurnal ordonat cronologic invers* al statisticilor containerului:

#!/bin/bash
# statshot.sh

MAX_LINES=1440
CONTAINER_NAME=containerul_meu
LOG=~/${CONTAINER_NAME}.stats.log

# docker stats-heading + statistics to new log
statistici docker --no-stream | grep -e „CONTAINER” -e ${CONTAINER_NAME} | este „[%Y-%m-%d %H:%M]” > ${LOG}_

# atașați linii de la jurnalul de rulare la un jurnal nou
# (preatingeți în cazul în care nu există încă)
atinge ${LOG}
grep ${CONTAINER_NAME} ${LOG} | cap -${MAX_LINES} >> ${LOG}_

# înlocuiți jurnalul de rulare cu un jurnal nou
mv ${LOG}_ ${LOG}

Rulați în fiecare minut și rulați după 1440 de linii, acest lucru ne oferă un istoric de 24 de ore al elementelor vitale ale containerului.

Pentru nevoile dvs. (inclusiv statisticile din jurnalul containerului), fișierul jurnal generat pe gazdă ar putea conține doar linia de statistici unică/actuală, dar scris într-o locație din care containerul poate citi și o lucrare CRON corespunzătoare în container o ecou. a consola

* ordinea inversă este un efect secundar al dorinței de a include antetul de statistici Docker, dar cu un script mai simplu și mai puține I/O pentru fișiere... orice sugestie de script-fu pentru a reduce I/O-ul fișierului în continuare sunt binevenite

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.