Skip to content

causely-oss/otel-demo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OTel Demo for Causely

This project provides all the configurations needed to deploy the OpenTelemetry Demo without the out of the box observability stack (Prometheus, Jaeger, Grafana, OpenSearch) and a custom OpenTelemetry collector configuration.

By default the configuration is for ingesting telemetry into the Causely mediator, but it can be modified to work with other endpoints as well, just edit the values.yaml with the settings for your endpoints

    exporters:
      otlp:
        endpoint: <URL_TO_YOUR_ENDPOINT>

Installation

You can install the OpenTelemetry Demo using helm and the values.yaml as provided in this repository:

helm repo add open-telemetry https://open-telemetry.github.io/opentelemetry-helm-charts
kubectl create namespace otel-demo
helm install my-otel-demo open-telemetry/opentelemetry-demo --namespace otel-demo -f https://raw.githubusercontent.com/causely-oss/otel-demo/refs/heads/main/values.yaml

After you have installed the demo, deploy Causely, following the instructions of the Getting Started guide, e.g.

TOKEN=eyJhbG...
causely agent install --token ${TOKEN}

Make sure that you enable the port forwarding for the frontend-proxy of the Demo to interact with the services (including the feature flag UI):

kubectl --namespace otel-demo port-forward svc/frontend-proxy 8080:8080

Note: If you use minikube, make sure to run minikube tunnel in a separate terminal!

When you run the commands listed above you should see a flow like the following:

The recording of the installation with asciinema

Tip

The video above is recorded with asciinema, which allows you to copy & paste out of the recording. Click on the image and give it a try!

Usage

To simulate incidents in the deployed demo application go to http://localhost:8080/feature and toggle one of the available feature flags.

After a while you will see the root cause for the scenario being detected by Causely.

Scenario: Fail payment service

For example you can set the feature flag paymentFailure to 75%. After a few minutes Causely will pinpoint the root cause Service Malfunction for the payment service, which impacts 4 other services.

A screenshot of the Causely UI showing the root cause on service payment

License

This project is licensed under the Apache 2.0 License.

Contributing

Contributions are welcome. Please submit pull requests or open issues for any changes or improvements.

About

All configurations needed to run the OpenTelemetry Demo with Causely

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published