For at overvåge hukommelsesprofilering i CI/CD-pipelines skal du spore følgende nøglemetrics:
1. Affaldsindsamlingsgennemstrømning: Dette måler mængden af tid brugt på affaldsindsamlingsaktiviteter sammenlignet med den samlede udførelsestid. En lavere værdi indikerer bedre hukommelsesstyring[1].
2. Gennemsnitlig pausetid for affaldsopsamling: Dette måler den gennemsnitlige tid, applikationen holder pause under affaldsindsamling. Lavere værdier indikerer mindre indvirkning på applikationens ydeevne[1].
3. Maksimal pausetid for affaldsindsamling: Dette måler den maksimale tid, applikationen holder pause under affaldsindsamling. Lavere værdier indikerer mindre indvirkning på applikationens ydeevne[1].
4. Objektoprettelseshastighed: Dette måler den hastighed, hvormed objekter oprettes af applikationen. Højere værdier kan indikere hukommelseslækager eller ineffektiv hukommelsesbrug[1].
5. Peak Heap Size: Dette måler den maksimale mængde hukommelse, der bruges af applikationen. Højere værdier kan indikere hukommelseslækager eller ineffektiv hukommelsesbrug[1].
6. Trådantal: Dette måler antallet af aktive tråde i applikationen. Højere værdier kan indikere øget hukommelsesforbrug[1].
7. Trådtilstande: Dette måler fordelingen af tråde på tværs af forskellige tilstande (f.eks. løb, sovende, blokeret). Dette kan hjælpe med at identificere hukommelsesrelaterede problemer[1].
8. Trådgrupper: Dette måler antallet af trådgrupper i applikationen. Højere værdier kan indikere øget hukommelsesforbrug[1].
9. Wasted Memory: Dette måler mængden af hukommelse, der ikke bliver brugt effektivt. Højere værdier kan indikere hukommelseslækager eller ineffektiv hukommelsesbrug[1].
10. Objektantal: Dette måler det samlede antal objekter i applikationen. Højere værdier kan indikere hukommelseslækager eller ineffektiv hukommelsesbrug[1].
11. Class Count: Dette måler antallet af klasser i applikationen. Højere værdier kan indikere øget hukommelsesforbrug[1].
Ved at spore disse målinger kan du identificere hukommelsesrelaterede problemer tidligt i udviklingens livscyklus og optimere hukommelsesforbruget for at sikre effektiv applikationsydelse.
Citater:[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/