For å overvåke minneprofilering i CI/CD-pipelines, bør du spore følgende nøkkelberegninger:
1. Søppelhentingsgjennomstrømning: Dette måler hvor mye tid brukt på søppelhentingsaktiviteter sammenlignet med den totale utførelsestiden. En lavere verdi indikerer bedre minnebehandling[1].
2. Gjennomsnittlig pausetid for søppelinnsamling: Dette måler den gjennomsnittlige tiden applikasjonen stopper under søppelhenting. Lavere verdier indikerer mindre innvirkning på applikasjonsytelsen[1].
3. Maksimal pausetid for søppelinnsamling: Dette måler den maksimale tiden applikasjonen stopper under søppelhenting. Lavere verdier indikerer mindre innvirkning på applikasjonsytelsen[1].
4. Objektopprettingshastighet: Dette måler hastigheten som objekter opprettes med av applikasjonen. Høyere verdier kan indikere minnelekkasjer eller ineffektiv minnebruk[1].
5. Peak Heap Size: Dette måler den maksimale mengden minne som brukes av applikasjonen. Høyere verdier kan indikere minnelekkasjer eller ineffektiv minnebruk[1].
6. Trådtall: Dette måler antall aktive tråder i applikasjonen. Høyere verdier kan indikere økt minnebruk[1].
7. Trådtilstander: Dette måler fordelingen av tråder på tvers av forskjellige tilstander (f.eks. løper, sover, blokkert). Dette kan bidra til å identifisere minnerelaterte problemer[1].
8. Trådgrupper: Dette måler antall trådgrupper i applikasjonen. Høyere verdier kan indikere økt minnebruk[1].
9. Waste Memory: Dette måler mengden minne som ikke brukes effektivt. Høyere verdier kan indikere minnelekkasjer eller ineffektiv minnebruk[1].
10. Objektantall: Dette måler det totale antallet objekter i applikasjonen. Høyere verdier kan indikere minnelekkasjer eller ineffektiv minnebruk[1].
11. Klasstelling: Dette måler antall klasser i applikasjonen. Høyere verdier kan indikere økt minnebruk[1].
Ved å spore disse beregningene kan du identifisere minnerelaterte problemer tidlig i utviklingslivssyklusen og optimalisere minnebruken for å sikre effektiv applikasjonsytelse.
Sitater:[1] https://blog.heaphero.io/2018/07/10/micrometrics-for-ci-cd-pipeline/
[2] https://www.linkedin.com/pulse/cicd-pipeline-metrics-palani-thiyagarajan
[3] https://thenewstack.io/using-dora-metrics-to-optimize-ci-pipelines/
[4] https://docs.gitlab.com/ee/user/analytics/ci_cd_analytics.html
[5] https://codilime.com/blog/continuous-monitoring-and-observability-in-devops/