Commit af3b1cd
Performance Testing: Container cpu memory limits (#184)
* Added new Compose file for data insertion into postgres
* Fix command in Docker Compose to handle line endings before executing load script
* Refactor Docker Compose command to handle line endings and streamline load script execution
* Aligned files in folder structure
* Enhance schema validation in bulk data loader and remove unused schema generator script
* Remove unused schema volume from Docker Compose and clean up load.sql comments
* Add container observability features with CPU and memory limits exporter
- Introduced Docker Compose configuration for observability services
- Added Prometheus metrics exporter for container CPU limits
- Created Grafana dashboards for monitoring CPU and memory usage
- Configured OpenTelemetry collector for metrics collection
- Implemented necessary environment variables for resource limits
* Update Docker images for twinengine-dataengine and dpp-plugin to use 'develop' tag
* Update container observability dashboard to improve CPU and memory metrics with new expressions and intervals
* Remove usage instructions from Docker Compose file
* Refactor load scripts to improve error handling and enhance readability by using constants for repeated values
* feat: Add observability stack with Grafana, Prometheus, and custom CPU limits exporter
- Introduced a Docker Compose setup for observability, including services for Grafana, Prometheus, and a custom CPU limits exporter.
- Added SQL script for truncating the database with a dynamic approach.
- Created Grafana dashboard configuration for monitoring container metrics.
- Implemented a Python-based CPU limits exporter that reads container limits from Docker and environment variables.
- Configured OpenTelemetry collector for gathering metrics from Docker containers.
- Established health checks and dependencies for services in the Docker Compose file.
* refactor: Improve Dockerfile structure and enhance error logging in CPU limits exporter
* refactor: Consolidate user creation and dependency installation in Dockerfile
* Remove SQL scripts for schema checks, data loading, and database truncation
- Deleted `check-schema.sql` which checked for required tables in the database schema.
- Removed `load.sql` which contained the logic for bulk data loading into various tables.
- Eliminated `truncate-db.sql` that was used to truncate all tables in the public schema.
* refactor: Update Docker setup and metrics exporter for resource limits
* refactor: Update Docker images and user permissions in docker-compose.yml
* refactor: Change user for otel-docker-stats-collector to root for improved permissions
* refactor: Adjust CPU and memory limits for performance services in Docker setup
* refactor: Reduce scrape intervals for container CPU and memory metrics to improve observability
---------
Co-authored-by: Hardi Shah <hsh@mm-software.com>1 parent 901c36d commit af3b1cd
15 files changed
Lines changed: 1033 additions & 11 deletions
File tree
- performance/databaseBulkDataLoader
- test/performance
- databaseBulkDataLoader
- sql
- grafana
- dashboards
- provisioning/dashboards
- observability
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
Lines changed: 8 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
16 | 24 | | |
17 | 25 | | |
18 | 26 | | |
| |||
21 | 29 | | |
22 | 30 | | |
23 | 31 | | |
24 | | - | |
25 | | - | |
26 | | - | |
27 | | - | |
28 | | - | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | 32 | | |
33 | 33 | | |
34 | 34 | | |
| |||
File renamed without changes.
File renamed without changes.
0 commit comments