https://github.com/jesperancinha/healthy-cameras
Demo on Kong in a system where several cameras watch over a building and we need to constantly monitor their statuses
https://github.com/jesperancinha/healthy-cameras
Last synced: 4 months ago
JSON representation
Demo on Kong in a system where several cameras watch over a building and we need to constantly monitor their statuses
- Host: GitHub
- URL: https://github.com/jesperancinha/healthy-cameras
- Owner: jesperancinha
- License: apache-2.0
- Created: 2022-05-19T20:17:31.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-10-29T08:56:32.000Z (about 1 year ago)
- Last Synced: 2024-10-29T10:04:44.068Z (about 1 year ago)
- Language: TypeScript
- Homepage: https://jesperancinha.github.io/healthy-cameras/
- Size: 3.29 MB
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: Readme.md
- License: LICENSE
Awesome Lists containing this project
README
# healthy-cameras
---
[](https://github.com/jesperancinha/healthy-cameras)
[](https://www.apache.org/licenses/LICENSE-2.0)
[](https://github.com/jesperancinha/healthy-cameras/actions/workflows/healthy-camera.yml)
[](https://github.com/jesperancinha/healthy-cameras/actions/workflows/healthy-cameras-e2e.yml)
[](https://ci.appveyor.com/project/jesperancinha/healthy-cameras)
[](https://www.codacy.com/gh/jesperancinha/healthy-cameras/dashboard?utm_source=github.com&utm_medium=referral&utm_content=jesperancinha/healthy-cameras&utm_campaign=Badge_Grade)
[](https://snyk.io/test/github/jesperancinha/healthy-cameras)
[](https://www.codacy.com/gh/jesperancinha/healthy-cameras/dashboard?utm_source=github.com&utm_medium=referral&utm_content=jesperancinha/healthy-cameras&utm_campaign=Badge_Coverage)
[](https://coveralls.io/github/jesperancinha/healthy-cameras?branch=main)
[](https://codecov.io/github/jesperancinha/healthy-cameras)
[](#)
[](#)
[](#)
---
## Technologies used
Please check the [TechStack.md](TechStack.md) file for details.
## Introduction
Demo on Kong in a system where several cameras watch over a plant, and we need to constantly monitor their status
Stable Releases
This repo is also the official support repo to my article on medium:
[](https://medium.com/itnext/protecting-applications-with-kong-security-plugins-and-using-statsd-to-monitor-system-states-a-eb3468d47319)
- [1.0.0](https://github.com/jesperancinha/healthy-cameras/tree/1.0.0) - [cd516c965673570f63c5829f9f908fc9f40a48f8](https://github.com/jesperancinha/healthy-cameras/tree/1.0.0) - Spring Boot 3.2.0
- [0.0.0](https://github.com/jesperancinha/healthy-cameras/tree/0.0.0) - [2aa6c43ad3b0a595f686c8038cb7b3df6005464a](https://github.com/jesperancinha/healthy-cameras/tree/0.0.0)
## How to run
##### Simple run
```shell
docker-compose up -d
```
or
```shell
make dcup
```
- [Prometheus on port 9090 - http://localhost:9090/](http://localhost:9090/)
- [Grafana on port 3000 - http://localhost:3000/](http://localhost:3000/)
- [Prometheus' metrics raw in the Camera Service on port 8080 - http://localhost:8080/actuator/prometheus](http://localhost:8080/actuator/prometheus)
- [Prometheus targets on port 9090 - http://localhost:9090/targets?search=](http://localhost:9090/targets?search=)
- [Camera Welcome Message for camera 1 - http://localhost:8000/camera-1-service/api/v1/hc](http://localhost:8000/camera-1-service/api/v1/hc)
- [Metrics in Kong - http://localhost:8001/metrics](http://localhost:8001/metrics)
- [Graphite Page - http://localhost:8085](http://localhost:8085)
## Resources
#### Online
- [StatsD @ Etsy](https://www.etsy.com/codeascraft/measure-anything-measure-everything)
- [statsd / statsd @ GitHub](https://github.com/statsd/statsd)
- [What is StatsD exactly? @ Datadog](https://www.datadoghq.com/blog/statsd/)
- [Kubernetes Documentation / Concepts Services / Load Balancing / Networking Ingress](https://kubernetes.io/docs/concepts/services-networking/ingress/)
- [A Deep Dive Into the Four Types of Prometheus Metrics](https://www.timescale.com/blog/four-types-prometheus-metrics-to-collect/)
- [Defining custom metrics in a Spring Boot application using Micrometer](https://autsoft.net/defining-custom-metrics-in-a-spring-boot-application-using-micrometer/)
- [Kong Blog Posts](https://github.com/danielkocot/kong-blogposts)
- [Kong API Gateway – Observability with Prometheus, Grafana and OpsGenie by Daniel Kocot](https://blog.codecentric.de/en/2019/12/kong-api-gateway-observability-with-prometheus-grafana-and-opsgenie/)
- [Defining custom metrics in a Spring Boot application using Micrometer](https://autsoft.net/defining-custom-metrics-in-a-spring-boot-application-using-micrometer/)
- [Spring Boot app metrics - with Prometheus and Micrometer](https://www.tutorialworks.com/spring-boot-prometheus-micrometer/#adding-a-custom-metric)
- [https://github.com/prometheus/statsd_exporter](https://github.com/prometheus/statsd_exporter)
- [StatsD: What Is It and How To Monitor It](https://www.metricfire.com/blog/statsd-what-is-it-and-how-to-monitor-it/)
- [Kong Gateway](https://docs.konghq.com/gateway/)
- [Kong Vitals](https://docs.konghq.com/gateway/2.8.x/vitals/)
- [Kong Plugin Hub](https://docs.konghq.com/hub/)
- [Kong Lua Rules](https://docs.konghq.com/hub/kong-inc/bot-detection/)
#### Videos
- [Custom Metrics with Prometheus by Stack Doctor](https://www.youtube.com/watch?v=XToKHYXSUyc)
- [Getting Started with Kong Ingress Controller for Kubernetes](https://www.youtube.com/watch?v=hrYqGXU-a6E)
- [How to Use Kong Gateway OAuth2 Plugin](https://www.youtube.com/watch?v=AIYIHZbDziI)
## About me
[](https://github.com/jesperancinha)