**Description:**
- Define `component.UseLocalHostAsDefaultHost` in the
`internal/localhostgate` package.
- Define `featuregate.ErrIsAlreadyRegistered` error, returned by
`Register` when a gate is already registered.
- Adds support for the localhost gate on the OTLP receiver.
This PR does not remove the current warning in any way, we can remove
this separately.
**Link to tracking Issue:** Updates #8510
**Testing:** Adds unit tests
**Documentation:** Document on OTLP receiver template and add related
logging.
**Description:**
- Validate Gate IDs: ids must be alphanumeric with dots. At a minimum we
have to disallow `,` to avoid ambiguity in the CLI, but I am being
intentionally more restrictive here
- Validate URLs: we check that a valid URL can be built from it using
the `net/url` stdlib package
- Validate versions: we check that a valid version is passed to the
`To/FromVersion` options using hashicorp's libraries and also that the
implicit version range, when defined, is not empty.
This does not change the public API types, it only adds validation.
Relates to #8220
---------
Signed-off-by: Alex Boten <aboten@lightstep.com>
Co-authored-by: Alex Boten <aboten@lightstep.com>
* [chore] use license shortform
To remain consistent w/ contrib repo, see https://github.com/open-telemetry/opentelemetry-collector-contrib/pull/22052
Signed-off-by: Alex Boten <aboten@lightstep.com>
* make goporto
Signed-off-by: Alex Boten <aboten@lightstep.com>
---------
Signed-off-by: Alex Boten <aboten@lightstep.com>
Finalizes the purpose of `toVersion`. `toVersion` will represent the version where the feature gate is completely removed. Setting a `stable` gate to `true` will result in a warning log. Setting a `stable` gate to `false` will result in an error.
Closes https://github.com/open-telemetry/opentelemetry-collector/issues/7621
This is consisten with other places where we call the options as the func that applies to.
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
Trying to keep the API closer to some standard libraries like FlagsSet. If a getter is needed we should name it Lookup.
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>