Skip to content

maljaaidi/opstrace

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Build status License Contributor Covenant

The Open Source Observability Distribution

Opstrace is a secure, horizontally-scalable, open source observability platform installed in your cloud account.

Highlights:

  • Horizontally scalable.
  • Inexpensive long-term retention of observability data.
  • Rigoriously tested end-to-end.
  • Easy and reliable upgrades.
  • Secure by default with TLS and authenticated endpoints.
  • Easy to configure with GUIs and APIs.

We walk on the shoulders of giants; Opstrace uses open source projects you know and love:

Key Features

Installation and Upgrades

Both installation and upgrades are initiated by a simple CLI command. In this example, you can see an abbreviated installation and upgrade cycle:

$ cat << EOF > config.yaml
 tenants:
  - staging
  - prod
EOF
$ ./opstrace create aws tracy -c config.yaml
...
info: create operation finished: tracy (aws)
info: Log in here: https://tracy.opstrace.io

A week later...

$ curl -L https://go.opstrace.com/cli-latest-release-macos | tar xjf -
$ ./opstrace upgrade aws tracy -c config.yaml
...
info: upgrade operation finished for tracy (aws)

Alert Management

Alertmanager can be difficult to configure, especially for Cortex when multiple tenants are used. Opstrace configures a horizontally scalable Ruler and Alertmanager out of the box to support reliable alerts. It also deploys a Grafana instance for each tenant, which can be now used to manage Cortex/Loki alerts thanks now to Grafana 8's Unified Alerting feature. Before, you'd have to manage each of these components independently, keeping them in sync manually.

opstrace ui alert overview

Tenant Management

The Opstrace UI allows for dynamic tenant creation and deletion:

tenants can be managed holistically

Tenants provide isolation for logically separate entities. For example, they can be used to represent different teams. The Opstrace UI also allows for setting per-tenant configuration, which can be used for example to set write/read rate limits on a per-tenant basis.

Quick Start

Install Opstrace in your own cloud account with our quick start. The Opstrace CLI uses your local credentials to setup the necessary cloud resources (e.g., a EKS or GKE cluster) and then deploys the Opstrace controller which orchestrates all of the app-level deployments. For example:

opstrace create aws <choose_a_name> <<EOF
tenants:
  - dev
  - staging
  - prod
env_label: try_opstrace
cert_issuer: letsencrypt-prod
EOF

In addition to AWS we also support GCP.

See our configuration reference for details: docs/references/configuration.md.

Don't forget to clean up if you're done kicking the tires:

opstrace destroy aws <choose_a_name>

Note: add the --region flag to ensure the CLI can locate any dangling resources, should you run into any sort of trouble cleaning up on AWS (for example, after a failed install).

Community

Authentic collaboration in a community setting is important to us. Please join us to learn more, get support, or contribute to the project.

You can find out more on our community page, including shoutouts to some of the main open source projects that we're building with.

Documentation

You can find the Opstrace documentation in /docs. We invite you to improve these docs together with us, and have a corresponding guide for that.

Contributing

We ❤️ working on open source projects, and we hope you do too. Please join us and make some contributions, however big or small.

  • Start by reading the Contributing guide to become familiar with the process.
  • Then review our Development guide to learn how to set up your environment and build the code.
  • If you'd like to find a place to start and get your feet wet, just reach out and ask in our community Slack. (It's also a good idea to try out our quick start.)

Take a look at our high-level roadmap to see where we're heading, and feel free to get in touch with us regarding questions and suggestions.

IMPORTANT NOTE: We welcome contributions from developers of all backgrounds. We encode that in a Contributor Code of Conduct. By participating in this project, you agree to abide by its terms.

Privacy

At Opstrace, we host a service that automatically provisions subdomains like <my_name>.opstrace.io. This makes it easy and clean to use the URLs for both humans and machines. To accomplish this safely, we require login via Auth0 subject to our privacy poicy.

Get in touch with us to discuss support for custom domains!

Security Reports

We take security seriously. If you believe you have found a security issue in our project or any related projects, please email us at [email protected] to responsibly disclose the issue.

About

The Open Source Observability Distribution

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 89.8%
  • JavaScript 4.1%
  • Markdown 2.5%
  • Go 1.8%
  • Shell 1.1%
  • Makefile 0.5%
  • Other 0.2%