Skip to content

Commit

Permalink
Merge branch 'main' into matth.versioned_config
Browse files Browse the repository at this point in the history
  • Loading branch information
matthagenbuch committed May 21, 2024
2 parents 5787dd6 + 20e9b35 commit bef63e5
Show file tree
Hide file tree
Showing 75 changed files with 2,172 additions and 1,301 deletions.
16 changes: 0 additions & 16 deletions .chloggen/2833-fix-detector-resourcedetectionprocessor.yaml

This file was deleted.

16 changes: 0 additions & 16 deletions .chloggen/2862-fix-clusterrolebinding-names.yaml

This file was deleted.

16 changes: 0 additions & 16 deletions .chloggen/add-collector-pool-healthy.yaml

This file was deleted.

16 changes: 0 additions & 16 deletions .chloggen/fix-labels-annotations-filter.yaml

This file was deleted.

16 changes: 0 additions & 16 deletions .chloggen/fix_load-initial-servicemonitors.yaml

This file was deleted.

This file was deleted.

18 changes: 0 additions & 18 deletions .chloggen/ta-add-https.yaml

This file was deleted.

2 changes: 1 addition & 1 deletion .github/workflows/e2e.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ jobs:
path: bin
key: ${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('Makefile') }}-${{ steps.setup-go.outputs.go-version }}
- name: Install chainsaw
uses: kyverno/action-install-chainsaw@v0.2.0
uses: kyverno/action-install-chainsaw@v0.2.1
- name: Install tools
run: make install-tools
- name: Prepare e2e tests
Expand Down
69 changes: 69 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,75 @@

<!-- next version -->

## 0.100.1

### 💡 Enhancements 💡

- `target allocator`: Refactor allocation strategies (#2928)
The performance of the per-node strategy was massively improved as part of this change.

### 🧰 Bug fixes 🧰

- `operator`: Fixes an issue where the user can no longer set the webhook port (#2923)

### Components

* [OpenTelemetry Collector - v0.100.0](https://github.com/open-telemetry/opentelemetry-collector/releases/tag/v0.100.0)
* [OpenTelemetry Contrib - v0.100.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.100.0)
* [Java auto-instrumentation - v1.32.1](https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/tag/v1.32.1)
* [.NET auto-instrumentation - v1.2.0](https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/releases/tag/{AUTO_INSTRUMENTATION_DOTNET_VERSION})
* [Node.JS - v0.51.0](https://github.com/open-telemetry/opentelemetry-js/releases/tag/experimental%2Fv0.51.0)
* [Python - v0.44b0](https://github.com/open-telemetry/opentelemetry-python-contrib/releases/tag/v0.44b0)
* [Go - v0.12.0-alpha](https://github.com/open-telemetry/opentelemetry-go-instrumentation/releases/tag/v0.12.0-alpha)
* [ApacheHTTPD - 1.0.4](https://github.com/open-telemetry/opentelemetry-cpp-contrib/releases/tag/webserver%2Fv1.0.4)
* [Nginx - 1.0.4](https://github.com/open-telemetry/opentelemetry-cpp-contrib/releases/tag/webserver%2Fv1.0.4)

## 0.100.0

### 💡 Enhancements 💡

- `opamp`: Add healthy field at collector pool level in opamp bridge heartbeat (#2936)
- `collector`: Add support for readinessProbe on OpenTelemetryCollector CRD. (#2943)
Add support for readinessProbe on `OpenTelemetryCollector` and its default similar to the already supported livenessProbe.

- `operator`: Enabling new Logs Enconder Configuration parameters. (#268)
- `operator`: Automatically enable RBAC creation if operator SA can create clusterroles and bindings. --create-rbac-permissions flag is noop and deprecated now. (#2588)
- `target allocator`: Added option for creating an mTLS-configured HTTPS server to fetch scrape config with real secret values. (#1669)
The change introduces an option to create an additional HTTPS server with mTLS configuration.
This server is specifically utilized for obtaining the scrape configuration with actual secret values.


### 🧰 Bug fixes 🧰

- `collector`: Create a Service Monitor for the monitoring service and another one for the collector service when the Prometheus exporter is used. (#2877)
Create a Service Monitor for the collector Service when Prometheus exporter is used. A different Service Monitor is created for the monitoring service.
This helps excluding the headless service (duplicating the metrics collection) and splits responsibilities between the two Service Monitors.
Now, the operator.opentelemetry.io/collector-service-type label is used to differentiate the services.
operator.opentelemetry.io/collector-monitoring-service and operator.opentelemetry.io/collector-headless-service are deprecated now.
- `target-allocator`: Fixed non-expected warnings on TA webhook. (#2685)
- `collector`: Ensure all Prometheus CRDs are installed (#2964)
- `collector`: Cleanup ClusterRoles and ClusterRoleBindings created by the operator (#2938)
The operator uses finalizer on the collector to run the cleanup
- `collector`: Use the k8snode detector instead of kubernetes for the automatic RBAC creation for the resourcedetector (#2833)
- `collector`: When two Collectors are created with the same name but different namespaces, the ClusterRoleBinding created by the first will be overriden by the second one. (#2862)
- `collector`: Fix to reflect changes of OpenTelemetryCollector.spec.nodeSelector in the collector Pods (#2940)
When updating `OpenTelemetryCollector.spec.nodeSelector` it was not removing previous selector from the final collector pod (Deployment/Daemonset/Statefulset).

- `collector`: Fix of Labels and Annotations filter (#2770)
- `target allocator`: Fix target allocator readiness check (#2903)

### Components

* [OpenTelemetry Collector - v0.100.0](https://github.com/open-telemetry/opentelemetry-collector/releases/tag/v0.100.0)
* [OpenTelemetry Contrib - v0.100.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.100.0)
* [Java auto-instrumentation - v1.32.1](https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/tag/v1.32.1)
* [.NET auto-instrumentation - v1.2.0](https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/releases/tag/{AUTO_INSTRUMENTATION_DOTNET_VERSION})
* [Node.JS - v0.51.0](https://github.com/open-telemetry/opentelemetry-js/releases/tag/experimental%2Fv0.51.0)
* [Python - v0.44b0](https://github.com/open-telemetry/opentelemetry-python-contrib/releases/tag/v0.44b0)
* [Go - v0.12.0-alpha](https://github.com/open-telemetry/opentelemetry-go-instrumentation/releases/tag/v0.12.0-alpha)
* [ApacheHTTPD - 1.0.4](https://github.com/open-telemetry/opentelemetry-cpp-contrib/releases/tag/webserver%2Fv1.0.4)
* [Nginx - 1.0.4](https://github.com/open-telemetry/opentelemetry-cpp-contrib/releases/tag/webserver%2Fv1.0.4)

## 0.99.0

### 🛑 Breaking changes 🛑
Expand Down
34 changes: 34 additions & 0 deletions DEBUG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# Debug tips to the OpenTelemetry Operator

A tip during a troubleshooting process is always welcome. Therefore, we prepared this documentation to help you identify possible issues and improve the application's reliability.

## Customizing Logs Output
By the default the Operator's log format is console like you can see below:
```bash
2024-05-06T11:55:11+02:00 INFO setup Prometheus CRDs are installed, adding to scheme.
2024-05-06T11:55:11+02:00 INFO setup Openshift CRDs are not installed, skipping adding to scheme.
2024-05-06T11:55:11+02:00 INFO setup the env var WATCH_NAMESPACE isn't set, watching all namespaces
2024-05-06T11:55:11+02:00 INFO Webhooks are disabled, operator is running an unsupported mode {"ENABLE_WEBHOOKS": "false"}
2024-05-06T11:55:11+02:00 INFO setup starting manager
```
If it is necessary to customize the log format, so you can use one of the following parameters:
- `--zap-devel`: Development Mode defaults(encoder=consoleEncoder,logLevel=Debug,stackTraceLevel=Warn). Production Mode defaults(encoder=jsonEncoder,logLevel=Info,stackTraceLevel=Error) (default false)
- `--zap-encoder`: Zap log encoding (one of 'json' or 'console')
- `--zap-log-level` Zap Level to configure the verbosity of logging. Can be one of 'debug', 'info', 'error', or any integer value > 0 which corresponds to custom debug levels of increasing verbosity
- `--zap-stacktrace-level` Zap Level at and above which stacktraces are captured (one of 'info', 'error', 'panic').
- `--zap-time-encoding` Zap time encoding (one of 'epoch', 'millis', 'nano', 'iso8601', 'rfc3339' or 'rfc3339nano'). Defaults to 'epoch'.
- The following parameters are effective only if the `--zap-encoder=json`:
- `zap-message-key`: The message key to be used in the customized Log Encoder
- `zap-level-key`: The level key to be used in the customized Log Encoder
- `zap-time-key`: The time key to be used in the customized Log Encoder
- `zap-level-format`: The level format to be used in the customized Log Encoder
Running the Operator with the parameters `--zap-encoder=json`, `--zap-message-key="msg"`, `zap-level-key="severity"`,`zap-time-key="timestamp"`,`zap-level-format="uppercase"` you should see the following output:
```bash
{"severity":"INFO","timestamp":"2024-05-07T16:23:35+02:00","logger":"setup","msg":"Prometheus CRDs are installed, adding to scheme."}
{"severity":"INFO","timestamp":"2024-05-07T16:23:35+02:00","logger":"setup","msg":"Openshift CRDs are not installed, skipping adding to scheme."}
{"severity":"INFO","timestamp":"2024-05-07T16:23:35+02:00","logger":"setup","msg":"the env var WATCH_NAMESPACE isn't set, watching all namespaces"}
{"severity":"INFO","timestamp":"2024-05-07T16:23:35+02:00","msg":"Webhooks are disabled, operator is running an unsupported mode","ENABLE_WEBHOOKS":"false"}
{"severity":"INFO","timestamp":"2024-05-07T16:23:35+02:00","logger":"setup","msg":"starting manager"}
```
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -730,6 +730,7 @@ The OpenTelemetry Operator _might_ work on versions outside of the given range,

| OpenTelemetry Operator | Kubernetes | Cert-Manager |
|------------------------| -------------- | ------------ |
| v0.100.0 | v1.23 to v1.29 | v1 |
| v0.99.0 | v1.23 to v1.29 | v1 |
| v0.98.0 | v1.23 to v1.29 | v1 |
| v0.97.0 | v1.23 to v1.29 | v1 |
Expand All @@ -752,7 +753,6 @@ The OpenTelemetry Operator _might_ work on versions outside of the given range,
| v0.80.0 | v1.19 to v1.27 | v1 |
| v0.79.0 | v1.19 to v1.27 | v1 |
| v0.78.0 | v1.19 to v1.27 | v1 |
| v0.77.0 | v1.19 to v1.26 | v1 |

## Contributing and Developing

Expand Down Expand Up @@ -789,14 +789,14 @@ Maintainers ([@open-telemetry/operator-maintainers](https://github.com/orgs/open
- [Jacob Aronoff](https://github.com/jaronoff97), Lightstep
- [Mikołaj Świątek](https://github.com/swiatekm-sumo), Sumo Logic
- [Pavol Loffay](https://github.com/pavolloffay), Red Hat
- [Vineeth Pothulapati](https://github.com/VineethReddy02), Timescale

Emeritus Maintainers

- [Alex Boten](https://github.com/codeboten), Lightstep
- [Bogdan Drutu](https://github.com/BogdanDrutu), Splunk
- [Juraci Paixão Kröhling](https://github.com/jpkrohling), Grafana Labs
- [Tigran Najaryan](https://github.com/tigrannajaryan), Splunk
- [Vineeth Pothulapati](https://github.com/VineethReddy02), Timescale

Learn more about roles in the [community repository](https://github.com/open-telemetry/community/blob/main/community-membership.md).

Expand Down
15 changes: 7 additions & 8 deletions RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Steps to release a new version of the OpenTelemetry Operator:

1. Create a `Prepare relese x.y.z` pull request with the following content:
1. Create a `Prepare release x.y.z` pull request with the following content:
1. Set the version you're releasing as an environment variable for convenience: `export VERSION=0.n+1.0`
1. Update `versions.txt`
- Operator, target allocator and opamp-bridge should be `$VERSION`.
Expand Down Expand Up @@ -44,10 +44,9 @@ The operator should be released within a week after the [OpenTelemetry collector

| Version | Release manager |
|----------|-----------------|
| v0.100.0 | @VineethReddy02 |
| v0.101.0 | @TylerHelmuth |
| v0.102.0 | @swiatekm-sumo |
| v0.103.0 | @frzifus |
| v0.104.0 | @jaronoff97 |
| v0.105.0 | @pavolloffay |
| v0.106.0 | @yuriolisa |
| v0.101.0 | @swiatekm-sumo |
| v0.102.0 | @frzifus |
| v0.103.0 | @jaronoff97 |
| v0.104.0 | @pavolloffay |
| v0.105.0 | @yuriolisa |
| v0.106.0 | @TylerHelmuth |

0 comments on commit bef63e5

Please sign in to comment.