github opstrace/opstrace v2021.07.23
Opstrace v2021.07.23

latest releases: v2021.11.17, v2021.09.17, v2021.08.13...
2 years ago

The full set of commits compared to the last release (v2021.07.02) is listed here.

What's new

  • Added support for custom DNS infrastructure. Use this when your goal is to reach the Opstrace instance under a custom DNS name, using DNS infrastructure managed entirely by you. For enabling this, set the use new install-time configuration parameter custom_dns_name (see reference docs).
  • Added support for custom Auth0 integration. Use this when you want to log in to the web UI of your Opstrace instance via a custom Auth0 application. That for example allows for single sign-on against a custom identity provider. For enabling this, set the use new install-time configuration parameter custom_auth0_client_id (see reference docs).
  • The tenant API authentication token can now be communicated via the Basic HTTP authentication scheme: set the token as the password and pick an arbitrary user name. This allows for using client software that does not support the Bearer authentication scheme (such as certain plugins from the FluentD/Fluent Bit ecosystem).

Fixed and improved

Integrations:

  • Kubernetes metrics integration: for better insight into container resource utilization, the following three kubelet scrape targets have been added: /metrics/cadvisor, /metrics/probes, /metrics/resource (#1070).

Core:

  • Fixed a rare failure scenario where frequent crash-looping of Cortex/Loki pods could result in cross-pollination between the Cortex/Loki memberlist rings, resulting in ingest API downtime (#1053).
  • max_inflight_push_requests is now set for Cortex distributors and ingesters to decrease the likelihood for them to run out of memory when exposed to highly concurrent push load.
  • The tenant creation API now rejects invalid tenant names. Previously, a newly added tenant with an invalid name would silently result in a dysfunctional state (#733, #710).
  • The number of Cortex ingesters is now chosen more sanely for Opstrace instances with a large machine count (#1046).

CLI:

  • The create does not overwrite the Opstrace controller config anymore. This is a change towards making it safer to invoke create more than once (#20, #1050).
  • The global status operation timeout was increased from one minute to five minutes to make it more resilient towards transient errors such as DNS name resolution hiccups (#981).

UI:

  • Fixed a scenario where no tenant was selected (#1031).
  • Improved error handling in the ring health section (#970).

Developer experience and QA

This section does not aim for completeness. Yet, we'd like to point out some significant changes around developer experience and testing.

  • Upgrade tests are now executed with every pull request.
  • The 'custom DNS' capability is tested with every pull request (in the GCP-based CI run).
  • The NodeJS runtime version across all components has been changed from 14.x to 16.x. This affects CLI, controller, the UI's web application, and test runners.
  • The TypeScript compiler tsc was bumped from 4.1 to 4.3 across the board.
  • The 'build info' system was changed for improving tsc output cachability. For local development, run make set-build-info-constants and then set the environment variable OPSTRACE_BUILDINFO_PATH to point to the buildinfo.json file at the root of the repository.

Don't miss a new opstrace release

NewReleases is sending notifications on new releases.