Skip to content

[receiver/azure_functions] Introduce new component#46584

Merged
andrzej-stencel merged 17 commits into
open-telemetry:mainfrom
tetianakravchenko:azurefunctionsreceiver
Mar 15, 2026
Merged

[receiver/azure_functions] Introduce new component#46584
andrzej-stencel merged 17 commits into
open-telemetry:mainfrom
tetianakravchenko:azurefunctionsreceiver

Conversation

@tetianakravchenko

Copy link
Copy Markdown
Contributor

Description

This change includes only overall structure (including factory), readme and proposed configuration for a new component.
Implementation will follow in future PRs.

Sponsored by @jmacd

Link to tracking issue

Part 1 of #43507

Testing

Initial tests were added

Documentation

Initial README added.

Signed-off-by: Tetiana Kravchenko <tetiana.kravchenko@elastic.co>
@tetianakravchenko tetianakravchenko requested a review from a team as a code owner March 3, 2026 12:06
@github-actions

github-actions Bot commented Mar 3, 2026

Copy link
Copy Markdown
Contributor

Welcome, contributor! Thank you for your contribution to opentelemetry-collector-contrib.

Important reminders:

A maintainer will review your pull request soon. Thank you for helping make OpenTelemetry better!

@github-actions github-actions Bot added the first-time contributor PRs made by new contributors label Mar 3, 2026
@paulojmdias

Copy link
Copy Markdown
Member

/workflow-approve

@edmocosta edmocosta requested a review from jmacd March 3, 2026 16:43
Signed-off-by: Tetiana Kravchenko <tetiana.kravchenko@elastic.co>
@paulojmdias

Copy link
Copy Markdown
Member

/workflow-approve

@constanca-m constanca-m left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Tanya! Looks great, just two comments

Comment on lines +34 to +35
| `http` | confighttp.ServerConfig | **Required.** HTTP server settings (e.g. `endpoint: :9090`). Typically use `FUNCTIONS_CUSTOMHANDLER_PORT`. |
| `auth` | component.ID | **Required.** Component ID of the extension that provides Azure authentication (e.g. token credential). |

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you already put required in the docs, maybe add it to the config validate already? In the skeleton PR, I usually add the validate implementation, but if you prefer to do it later, it is also fine. In that case, I would remove the required from this README

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've added config validation


type functionsReceiver struct{}

func newFunctionsReceiver(_ *Config, _ receiver.Settings, _ consumer.Logs) *functionsReceiver {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
func newFunctionsReceiver(_ *Config, _ receiver.Settings, _ consumer.Logs) *functionsReceiver {
func newFunctionsReceiver(_ *Config, _ receiver.Settings, _ consumer.Logs) receiver.Receiver {

Signed-off-by: Tetiana Kravchenko <tetiana.kravchenko@elastic.co>

@zmoog zmoog left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added a few minor comments, but this LGTM!

Comment thread receiver/azurefunctionsreceiver/README.md Outdated
Comment thread receiver/azurefunctionsreceiver/README.md
Comment thread receiver/azurefunctionsreceiver/README.md Outdated
Comment on lines +41 to +43
if cfg.Auth == (component.ID{}) {
errs = append(errs, errors.New("auth must be set"))
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can make this optional—or remove it for now—since the azureauth extension is needed for blob storage, something we're going to contribute a little later.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good point! I made it optional

tetianakravchenko and others added 3 commits March 4, 2026 16:01
Co-authored-by: Maurizio Branca <maurizio.branca@elastic.co>
…resourcelogs_encoding in config tests

Signed-off-by: Tetiana Kravchenko <tetiana.kravchenko@elastic.co>
@paulojmdias

Copy link
Copy Markdown
Member

/workflow-approve

@songy23 songy23 added the Accepted Component New component has been sponsored label Mar 4, 2026
Comment thread receiver/azurefunctionsreceiver/metadata.yaml Outdated
Signed-off-by: Tetiana Kravchenko <tetiana.kravchenko@elastic.co>
@paulojmdias

Copy link
Copy Markdown
Member

/workflow-approve

@andrzej-stencel andrzej-stencel left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Needs some more updates adding the underscore in name - those mentioned below and more.

Comment thread .chloggen/config.yaml Outdated
Comment thread .chloggen/feat_new-component-azurefunctionsreceiver.yaml Outdated

@jmacd jmacd left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!

@otelbot

otelbot Bot commented Mar 15, 2026

Copy link
Copy Markdown
Contributor

Thank you for your contribution @tetianakravchenko! 🎉 We would like to hear from you about your experience contributing to OpenTelemetry by taking a few minutes to fill out this survey. If you are getting started contributing, you can also join the CNCF Slack channel #opentelemetry-new-contributors to ask for guidance and get help.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Accepted Component New component has been sponsored cmd/golden cmd/opampsupervisor cmd/telemetrygen telemetrygen command confmap/provider/aesprovider confmap/provider/googlesecretmanagerprovider confmap/provider/s3provider confmap/provider/secretsmanagerprovider connector/count connector/datadog connector/exceptions connector/failover connector/grafanacloud connector/metricsaslogs connector/otlpjson connector/roundrobin connector/routing connector/servicegraph connector/signaltometrics connector/slowsql connector/spanmetrics connector/sum exporter/alertmanager exporter/alibabacloudlogservice Alibaba components exporter/awscloudwatchlogs awscloudwatchlogs exporter exporter/awsemf awsemf exporter exporter/awskinesis exporter/awss3 exporter/awsxray exporter/azureblob exporter/azuredataexplorer exporter/azuremonitor exporter/bmchelix exporter/cassandra exporter/clickhouse exporter/coralogix exporter/datadog Datadog components exporter/dataset exporter/doris exporter/elasticsearch exporter/faro exporter/file exporter/googlecloud exporter/googlecloudpubsub exporter/googlecloudstorage exporter/googlemanagedprometheus Google Managed Prometheus exporter exporter/honeycombmarker exporter/influxdb exporter/kafka exporter/loadbalancing exporter/logicmonitor exporter/logzio exporter/mezmo exporter/opensearch exporter/otelarrow exporter/prometheus exporter/prometheusremotewrite exporter/pulsar exporter/rabbitmq exporter/sematext exporter/sentry exporter/signalfx exporter/splunkhec exporter/stef exporter/sumologic exporter/syslog exporter/tencentcloudlogservice exporter/tinybird exporter/zipkin extension/ack extension/asapauth extension/awsproxy extension/azureauth extension/basicauth extension/bearertokenauth extension/cgroupruntime extension/datadog extension/encoding/avrologencoding extension/encoding/awscloudwatchmetricstreams extension/encoding/awslogsencoding extension/encoding/azureencoding extension/encoding/googlecloudlogentryencoding extension/encoding/jaegerencoding extension/encoding/jsonlogencoding extension/encoding/otlpencoding extension/encoding/skywalkingencoding extension/encoding/textencoding extension/encoding first-time contributor PRs made by new contributors

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants