Heimdall is a tool created for developers to monitor and test services.
2.1K
Heimdall is a tool created for developers to monitor and test services, allowing them to validate and troubleshoot performance issues. It provides simulated services that applications can use to replicate real interactions with remote services. Furthermore, it monitors the infrastructure while conducting load tests on these services.
For more information about Heimdal, please visit https://github.com/adrian-tarau/heimdall.
The following protocols/services are faked and available to be used:
Heimdall integrates with Apache Kafka and Pulsar brokers. Events can be pulled from topics, viewed and searched.
For testing the performance of services, Heimdall integrates the following load-testing tools:
Heimdall utilizes these tools' reporting capabilities for individual simulations, but it also integrates the results from these simulations to provide trends and reporting capabilities that surpass their individual functionalities.
The compose.yaml should be changed if needed (passwords, volumes, etc). By default, Heimdall exposes all required ports (web container, protocols, etc) starting with port 9800, but they can be changed as needed. Latest version of the container (the development branch) is used unless it is changed.
The protocols are mapped to the following ports:
9805: SMTP9806: SMTP with TLS9807: SNMP over UDP9808: SNMP over TCP9809 Syslog over UDP9810: Syslog over TCP9811: GELF over UDP9812: GELF over TCPThe environment variable HEIMDALL_PROTOCOL_SIMULATOR_ENABLED can be set to true to enable simulators for protocols.
services:
heimdall:
image: adriantarau/heimdall:latest
ports:
- 9800:8080
- 9805:2525
- 9806:2526
- 9807:2161/udp
- 9808:2162
- 9809:2514/udp
- 9810:2601
- 9811:12201/udp
- 9812:12200
volumes:
- heimdall-data:/data
depends_on:
mysql:
condition: service_healthy
environment:
HEIMDALL_DATABASE_HOST: mysql
HEIMDALL_DATABASE_NAME: heimdall
HEIMDALL_DATABASE_USERNAME: heimdall
HEIMDALL_DATABASE_PASSWORD: hD0IzwPtPD3353wj1ADq
HEIMDALL_PROTOCOL_SIMULATOR_ENABLED: false
HEIMDALL_RESOURCE_DIRECTORY: /data
mysql:
image: mysql:8.2
ports:
- 3306
volumes:
- mysql-data:/var/lib/mysql
environment:
MYSQL_RANDOM_ROOT_PASSWORD: yes
MYSQL_DATABASE: heimdall
MYSQL_USER: heimdall
MYSQL_PASSWORD: hD0IzwPtPD3353wj1ADq
healthcheck:
test: [ "CMD", "mysqladmin" ,"ping", "-h", "localhost", "-u", "$${MYSQL_USER}", "-p$${MYSQL_PASSWORD}" ]
interval: 5s
timeout: 5s
retries: 30
volumes:
mysql-data:
heimdall-data:
Start Heimdal using the following command:
docker compose -p heimdall up -d
Content type
Image
Digest
sha256:67e443b49…
Size
741.4 MB
Last updated
about 1 month ago
docker pull adriantarau/heimdall:1.0.latest