Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New component - Azure Data Explorer #11830

Closed
ag-ramachandran opened this issue Jun 30, 2022 · 10 comments
Closed

New component - Azure Data Explorer #11830

ag-ramachandran opened this issue Jun 30, 2022 · 10 comments
Labels
Accepted Component New component has been sponsored Stale Vendor-Specific Component New component that interfaces with a vendor API and will be maintained by the vendor.

Comments

@ag-ramachandran
Copy link
Contributor

The purpose and use-cases of the new component

Azure Data Explorer Exporter

This exporter sends metrics, logs and trace data to Azure Data Explorer.

Example configuration for the component

Configuration

The following settings are required:

  • cluster_uri (no default): The cluster name of the provisioned ADX cluster to ingest the data.
  • application_id (no default): The client id to connect to the cluster and ingest data.
  • application_key (no default): The cluster secret corresponding to the client id.
  • tenant_id (no default): The tenant id where the application_id is referenced from.

The following settings can be optionally configured and have default values:

Note that the database , tables are expected to be created upfront before the exporter is in operation , the definition of these are in the section Database and Table definition scripts

  • db_name (default = "oteldb"): The ADX database where the tables are present to ingest the data.

  • metrics_table_name (default = OTELMetrics): The target table in the database db_name that stores exported metric data.

  • logs_table_name (default = OTELLogs): The target table in the database db_name that stores exported logs data.

  • traces_table_name (default = OTELLogs): The target table in the database db_name that stores exported traces data.

    Optionally the following table mappings can be specified if the data needs to be mapped to a different table on ADX. This uses json table mapping that can be used to map attributes to target tables

  • metrics_table_name_mapping (optional, no default): The table mapping name to be used for the table db_name.metrics_table_name

  • logs_table_name_mapping (optional, no default): The table mapping name to be used for the table db_name.logs_table_name

  • traces_table_name_mapping (optional, no default): The table mapping name to be used for the table db_name.traces_table_name

  • ingestion_type (default = queued): ADX ingest can happen in managed streaming or queued modes.

Note: Streaming ingestion has to be enabled on ADX [configure the ADX cluster] in case of streaming option

An example configuration is provided as follows:

exporters:
  azuredataexplorer:
    # Kusto cluster uri
    cluster_uri: "https://CLUSTER.kusto.windows.net"
    # Client Id
    application_id: "f80da32c-108c-415c-a19e-643f461a677a"
    # The client secret for the client
    application_key: "xx-xx-xx-xx"
    # The tenant
    tenant_id: "21ff9e36-fbaa-43c8-98ba-00431ea10bc3"
    # Database for the logs
    db_name: "oteldb"
    # Metric table name
    metrics_table_name: "OTELMetrics"
    # Log table name
    logs_table_name: "OTELLogs"
    # Traces table
    traces_table_name: "OTELTraces"
    # Metric table mapping name
    metrics_table_name_mapping: "otelmetrics_mapping"
    # Log table mapping name
    logs_table_name_mapping: "otellogs_mapping"
    # Traces mapping table
    traces_table_name_mapping: "oteltraces_mapping"
    # Type of ingestion managed or queued
    ingestion_type : "managed"

Telemetry data types supported

Traces , Metrics and Logs are supported

Is this a vendor-specific component? If so, are you proposing to contribute this as a representative of the vendor?

Yes. This interfaces with Azure Data Explorer , a database offering from Microsoft

Sponsor (Optional)

@mx-psi
Copy link
Member

mx-psi commented Jun 30, 2022

@ag-ramachandran are you a representative of Microsoft?

@ag-ramachandran
Copy link
Contributor Author

Hi @mx-psi , I am a part of the Microsoft organization (Microsoft is my current employer). Is there something specific that may be needed with respect to this , please let me know

@mx-psi mx-psi added the Vendor-Specific Component New component that interfaces with a vendor API and will be maintained by the vendor. label Jun 30, 2022
@mx-psi
Copy link
Member

mx-psi commented Jun 30, 2022

Nothing else needed on that front, just someone that volunteers to maintain this (which could be you?). Also, if you don't have a sponsor the next one on the list should be @codeboten

@ag-ramachandran
Copy link
Contributor Author

Thank you , we could create a DL for maintaining the component. For now it could be me.

@TylerHelmuth TylerHelmuth added the Sponsor Needed New component seeking sponsor label Jul 1, 2022
@ag-ramachandran
Copy link
Contributor Author

Hello @codeboten, sorry for the mention in case you are busy! Would you be able to be the sponsor for this component? We could set up some discussions and take this component forward!

@codeboten
Copy link
Contributor

Happy to sponsor 👍🏻

@codeboten codeboten added Accepted Component New component has been sponsored and removed Sponsor Needed New component seeking sponsor labels Jul 8, 2022
@ag-ramachandran
Copy link
Contributor Author

Thanks a lot @codeboten, what do you suggest as next steps. We've been doing some dev around the exporter and are in the process of internal reviews

codeboten pushed a commit to codeboten/opentelemetry-collector-contrib that referenced this issue Jul 11, 2022
Updating the component sponsors list after sponsonring open-telemetry#11830
codeboten pushed a commit that referenced this issue Jul 11, 2022
Updating the component sponsors list after sponsonring #11830
@ag-ramachandran
Copy link
Contributor Author

Hello Alex! Is there a specific structure for the review since this is a new component?
We have largely followed the code structure for other exporters. If there is a specific sequence/structure to the PR's we can start with that.
@codeboten

@ag-ramachandran
Copy link
Contributor Author

Hello @codeboten , we just opened a PR for this new component as well. Is there something as a next step we can do so that we can add this component in.

Thank you

@github-actions
Copy link
Contributor

This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping @open-telemetry/collector-contrib-triagers. If this issue is still relevant, please ping the code owners or leave a comment explaining why it is still relevant. Otherwise, please close it.

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 Stale Vendor-Specific Component New component that interfaces with a vendor API and will be maintained by the vendor.
Projects
None yet
Development

No branches or pull requests

4 participants