https://github.com/zpratt/koozie-exporter
Track idea to production, without the sweat
https://github.com/zpratt/koozie-exporter
dora golang helm kubernetes kubernetes-cluster metrics-exporter operations
Last synced: 5 months ago
JSON representation
Track idea to production, without the sweat
- Host: GitHub
- URL: https://github.com/zpratt/koozie-exporter
- Owner: zpratt
- License: mit
- Created: 2020-02-02T21:41:29.000Z (over 6 years ago)
- Default Branch: main
- Last Pushed: 2023-05-10T00:02:31.000Z (about 3 years ago)
- Last Synced: 2025-02-13T11:36:56.331Z (over 1 year ago)
- Topics: dora, golang, helm, kubernetes, kubernetes-cluster, metrics-exporter, operations
- Language: Go
- Homepage:
- Size: 548 KB
- Stars: 2
- Watchers: 4
- Forks: 1
- Open Issues: 22
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# koozie-exporter
[](https://github.com/zpratt/topokube/actions/workflows/docker-image.yml)

Tracking the flow of idea to production for applications deployed to kubernetes.
## What is this?
This is my idea for a potentially useful way to track the 4 Key Metrics (lead time, deployment frequency, mean time to recovery, change failure rate) automatically for applications deployed to k8s.
## Project State
I'm still hacking on what this should look like. This is currently POC quality, though it can recognize when things are deployed to the cluster.
## Prerequisite Steps:
install docker (*yes this is currently only working with docker*)
```bash
brew update && brew install helm kind helmfile golangci-lint
helm plugin install https://github.com/databus23/helm-diff
```
## Running In Kind:
```bash
sudo sh -c "echo '127.0.0.1 topokube.local' >> /etc/hosts"
make inkind
open https://topokube.local:30443/ui/index.html
```
## Demo Time - Cause a deployment and watch the output
```bash
make cause-deploy
```
What does this do? It runs a trivial container, which simulates the deployment of an application. It then makes a request to /metrics to show the current deployment count.
Kubernetes creates a pod for you, which triggers an event that koozie-exporter watches for. Koozie uses the prometheus client to capture metrics. A metrics endpoint (/metrics) is exposed, so that you can scrape these metrics using your own prometheus instance.