Docker: aoepeople/vistecture-dashboard
Works together with Vistecture and shows the state of the vistecture architecture in kubernetes like this:
You can use the Dockerimage: aoepeople/vistecture-dashboard
docker run --rm -ti -p 8080:8080 aoepeople/vistecture-dashboardJust copy your vistecture definitions into /vistecture/project.yml
The following Dockerfile could be used to build an image running the dashboard for your defined architecture:
FROM aoepeople/vistecture-dashboard
COPY definition /definition
CMD ["-config", "/definition/project.yml"]The following "Properties" are used to control dashboard behaviour (See example folder for an example)
deployment: Has to be set tokubernetes(otherwise app is not checked)healthCheckPath: Healthcheck endpoint (relative path) (Optional - if not set just the base url is called) - If a healthCheckPath is configured it need to match the defined format (see below)healthCheckPort: Healthcheck port (Optional - if not set then port with the name set inhealthCheckPortNameis looked up, and if it is also not found - then just first port of service is used)healthCheckPortName: Healthcheck port name (Optional - alternative tohealthCheckPort)apiDocPath: Optional the relative path to an API spec (just used to show a link)k8sDeploymentName: Override the name of the deployment in kubernetes that is checked(default = appname)k8sHealthCheckServiceName: Override service name that is used to check health (default = appname)k8sHealthCheckThroughIngress: If the app should be checked from public (ingress is required for the service)k8sType: set to "job" if the application is not represented by a deployment in kubernetes, but it is just a job
If a Healthcheck path is configured for the application the following format is evaluated:
{
"services": [
{
"name": "session",
"alive": true,
"details": "success"
},
{
"name": "magento",
"alive": true,
"details": "magento is alive"
},
{
"name": "om3oms-rabbitMQ-publisher",
"alive": false,
"details": "dial tcp [::1]:5672: connect: connection refused"
}
]
}T ignore failing services you can provide their name as ignore flags, e.g.
go run vistecture-dashboard.go -Demo -ignore akeneo -ignore flamingorespectively adjust the command in your dockerfile
CMD ["-config", "/definition/project.yml", "-ignore", "myApp", "-ignore", "otherApp"]run
go run vistecture-dashboard.goFor a demo display please use:
go run vistecture-dashboard.go -config=example/project.yml -DemoAnd access it via http://localhost:8080
