[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6EMGYE77FEY2JXQQ5CSNXY2":3,"skill-same:01M6EMGYE77FEY2JXQQ5CSNXY2":128},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":35,"linkOnly":36,"markdownContent":37,"markdownBody":38,"frontMatter":39,"refName":42,"commitSha":43,"skillDirectory":44,"forksCount":45,"repositoryHtmlUrl":46,"repositoryHomepageUrl":47,"ownerHtmlUrl":48,"ownerBlogUrl":6,"ownerDescription":49,"updatedAt":50,"install":51,"resources":64},"01M6EMGYE77FEY2JXQQ5CSNXY2","azure-monitor-opentelemetry-exporter-java",null,"Azure Monitor OpenTelemetry Exporter for Java. Export OpenTelemetry traces, metrics, and logs to Azure Monitor\u002FApplication Insights.\nTriggers: \"AzureMonitorExporter java\", \"opentelemetry azure java\", \"application insights java otel\", \"azure monitor tracing java\".\nNote: This package is DEPRECATED. Migrate to azure-monitor-opentelemetry-autoconfigure.","ComeOnOliver\u002Fskillshub","ComeOnOliver","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F43215937?v=4","01M6E5JNFECJAAVFE0W7SMWWD2","Haoran Shu","01M6E5JNNDQS7AJZDYFQ8TPZCK",67,"MIT","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Faiskillstore\u002Fmarketplace\u002Fazure-monitor-opentelemetry-exporter-java\u002Fazure-monitor-opentelemetry-exporter-java\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34],"azure","azure monitor opentelemetry exporter java","monitor","java","OpenTelemetry","azure monitor","otel","metrics","package","tracing","logs","azure-monitor","migrate","export","application","triggers","2026-11-10 10:12:30",false,"---\nname: azure-monitor-opentelemetry-exporter-java\ndescription: |\n  Azure Monitor OpenTelemetry Exporter for Java. Export OpenTelemetry traces, metrics, and logs to Azure Monitor\u002FApplication Insights.\n  Triggers: \"AzureMonitorExporter java\", \"opentelemetry azure java\", \"application insights java otel\", \"azure monitor tracing java\".\n  Note: This package is DEPRECATED. Migrate to azure-monitor-opentelemetry-autoconfigure.\npackage: com.azure:azure-monitor-opentelemetry-exporter\n---\n\n# Azure Monitor OpenTelemetry Exporter for Java\n\n> **⚠️ DEPRECATION NOTICE**: This package is deprecated. Migrate to `azure-monitor-opentelemetry-autoconfigure`.\n>\n> See [Migration Guide](https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-for-java\u002Fblob\u002Fmain\u002Fsdk\u002Fmonitor\u002Fazure-monitor-opentelemetry-exporter\u002FMIGRATION.md) for detailed instructions.\n\nExport OpenTelemetry telemetry data to Azure Monitor \u002F Application Insights.\n\n## Installation (Deprecated)\n\n```xml\n\u003Cdependency>\n    \u003CgroupId>com.azure\u003C\u002FgroupId>\n    \u003CartifactId>azure-monitor-opentelemetry-exporter\u003C\u002FartifactId>\n    \u003Cversion>1.0.0-beta.x\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\n\n## Recommended: Use Autoconfigure Instead\n\n```xml\n\u003Cdependency>\n    \u003CgroupId>com.azure\u003C\u002FgroupId>\n    \u003CartifactId>azure-monitor-opentelemetry-autoconfigure\u003C\u002FartifactId>\n    \u003Cversion>LATEST\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\n\n## Environment Variables\n\n```bash\nAPPLICATIONINSIGHTS_CONNECTION_STRING=InstrumentationKey=xxx;IngestionEndpoint=https:\u002F\u002Fxxx.in.applicationinsights.azure.com\u002F\n```\n\n## Basic Setup with Autoconfigure (Recommended)\n\n### Using Environment Variable\n\n```java\nimport io.opentelemetry.sdk.autoconfigure.AutoConfiguredOpenTelemetrySdk;\nimport io.opentelemetry.sdk.autoconfigure.AutoConfiguredOpenTelemetrySdkBuilder;\nimport io.opentelemetry.api.OpenTelemetry;\nimport com.azure.monitor.opentelemetry.exporter.AzureMonitorExporter;\n\n\u002F\u002F Connection string from APPLICATIONINSIGHTS_CONNECTION_STRING env var\nAutoConfiguredOpenTelemetrySdkBuilder sdkBuilder = AutoConfiguredOpenTelemetrySdk.builder();\nAzureMonitorExporter.customize(sdkBuilder);\nOpenTelemetry openTelemetry = sdkBuilder.build().getOpenTelemetrySdk();\n```\n\n### With Explicit Connection String\n\n```java\nAutoConfiguredOpenTelemetrySdkBuilder sdkBuilder = AutoConfiguredOpenTelemetrySdk.builder();\nAzureMonitorExporter.customize(sdkBuilder, \"{connection-string}\");\nOpenTelemetry openTelemetry = sdkBuilder.build().getOpenTelemetrySdk();\n```\n\n## Creating Spans\n\n```java\nimport io.opentelemetry.api.trace.Tracer;\nimport io.opentelemetry.api.trace.Span;\nimport io.opentelemetry.context.Scope;\n\n\u002F\u002F Get tracer\nTracer tracer = openTelemetry.getTracer(\"com.example.myapp\");\n\n\u002F\u002F Create span\nSpan span = tracer.spanBuilder(\"myOperation\").startSpan();\n\ntry (Scope scope = span.makeCurrent()) {\n    \u002F\u002F Your application logic\n    doWork();\n} catch (Throwable t) {\n    span.recordException(t);\n    throw t;\n} finally {\n    span.end();\n}\n```\n\n## Adding Span Attributes\n\n```java\nimport io.opentelemetry.api.common.AttributeKey;\nimport io.opentelemetry.api.common.Attributes;\n\nSpan span = tracer.spanBuilder(\"processOrder\")\n    .setAttribute(\"order.id\", \"12345\")\n    .setAttribute(\"customer.tier\", \"premium\")\n    .startSpan();\n\ntry (Scope scope = span.makeCurrent()) {\n    \u002F\u002F Add attributes during execution\n    span.setAttribute(\"items.count\", 3);\n    span.setAttribute(\"total.amount\", 99.99);\n    \n    processOrder();\n} finally {\n    span.end();\n}\n```\n\n## Custom Span Processor\n\n```java\nimport io.opentelemetry.sdk.trace.SpanProcessor;\nimport io.opentelemetry.sdk.trace.ReadWriteSpan;\nimport io.opentelemetry.sdk.trace.ReadableSpan;\nimport io.opentelemetry.context.Context;\n\nprivate static final AttributeKey\u003CString> CUSTOM_ATTR = AttributeKey.stringKey(\"custom.attribute\");\n\nSpanProcessor customProcessor = new SpanProcessor() {\n    @Override\n    public void onStart(Context context, ReadWriteSpan span) {\n        \u002F\u002F Add custom attribute to every span\n        span.setAttribute(CUSTOM_ATTR, \"customValue\");\n    }\n\n    @Override\n    public boolean isStartRequired() {\n        return true;\n    }\n\n    @Override\n    public void onEnd(ReadableSpan span) {\n        \u002F\u002F Post-processing if needed\n    }\n\n    @Override\n    public boolean isEndRequired() {\n        return false;\n    }\n};\n\n\u002F\u002F Register processor\nAutoConfiguredOpenTelemetrySdkBuilder sdkBuilder = AutoConfiguredOpenTelemetrySdk.builder();\nAzureMonitorExporter.customize(sdkBuilder);\n\nsdkBuilder.addTracerProviderCustomizer(\n    (sdkTracerProviderBuilder, configProperties) -> \n        sdkTracerProviderBuilder.addSpanProcessor(customProcessor)\n);\n\nOpenTelemetry openTelemetry = sdkBuilder.build().getOpenTelemetrySdk();\n```\n\n## Nested Spans\n\n```java\npublic void parentOperation() {\n    Span parentSpan = tracer.spanBuilder(\"parentOperation\").startSpan();\n    try (Scope scope = parentSpan.makeCurrent()) {\n        childOperation();\n    } finally {\n        parentSpan.end();\n    }\n}\n\npublic void childOperation() {\n    \u002F\u002F Automatically links to parent via Context\n    Span childSpan = tracer.spanBuilder(\"childOperation\").startSpan();\n    try (Scope scope = childSpan.makeCurrent()) {\n        \u002F\u002F Child work\n    } finally {\n        childSpan.end();\n    }\n}\n```\n\n## Recording Exceptions\n\n```java\nSpan span = tracer.spanBuilder(\"riskyOperation\").startSpan();\ntry (Scope scope = span.makeCurrent()) {\n    performRiskyWork();\n} catch (Exception e) {\n    span.recordException(e);\n    span.setStatus(StatusCode.ERROR, e.getMessage());\n    throw e;\n} finally {\n    span.end();\n}\n```\n\n## Metrics (via OpenTelemetry)\n\n```java\nimport io.opentelemetry.api.metrics.Meter;\nimport io.opentelemetry.api.metrics.LongCounter;\nimport io.opentelemetry.api.metrics.LongHistogram;\n\nMeter meter = openTelemetry.getMeter(\"com.example.myapp\");\n\n\u002F\u002F Counter\nLongCounter requestCounter = meter.counterBuilder(\"http.requests\")\n    .setDescription(\"Total HTTP requests\")\n    .setUnit(\"requests\")\n    .build();\n\nrequestCounter.add(1, Attributes.of(\n    AttributeKey.stringKey(\"http.method\"), \"GET\",\n    AttributeKey.longKey(\"http.status_code\"), 200L\n));\n\n\u002F\u002F Histogram\nLongHistogram latencyHistogram = meter.histogramBuilder(\"http.latency\")\n    .setDescription(\"Request latency\")\n    .setUnit(\"ms\")\n    .ofLongs()\n    .build();\n\nlatencyHistogram.record(150, Attributes.of(\n    AttributeKey.stringKey(\"http.route\"), \"\u002Fapi\u002Fusers\"\n));\n```\n\n## Key Concepts\n\n| Concept | Description |\n|---------|-------------|\n| Connection String | Application Insights connection string with instrumentation key |\n| Tracer | Creates spans for distributed tracing |\n| Span | Represents a unit of work with timing and attributes |\n| SpanProcessor | Intercepts span lifecycle for customization |\n| Exporter | Sends telemetry to Azure Monitor |\n\n## Migration to Autoconfigure\n\nThe `azure-monitor-opentelemetry-autoconfigure` package provides:\n- Automatic instrumentation of common libraries\n- Simplified configuration\n- Better integration with OpenTelemetry SDK\n\n### Migration Steps\n\n1. Replace dependency:\n   ```xml\n   \u003C!-- Remove -->\n   \u003Cdependency>\n       \u003CgroupId>com.azure\u003C\u002FgroupId>\n       \u003CartifactId>azure-monitor-opentelemetry-exporter\u003C\u002FartifactId>\n   \u003C\u002Fdependency>\n   \n   \u003C!-- Add -->\n   \u003Cdependency>\n       \u003CgroupId>com.azure\u003C\u002FgroupId>\n       \u003CartifactId>azure-monitor-opentelemetry-autoconfigure\u003C\u002FartifactId>\n   \u003C\u002Fdependency>\n   ```\n\n2. Update initialization code per [Migration Guide](https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-for-java\u002Fblob\u002Fmain\u002Fsdk\u002Fmonitor\u002Fazure-monitor-opentelemetry-exporter\u002FMIGRATION.md)\n\n## Best Practices\n\n1. **Use autoconfigure** — Migrate to `azure-monitor-opentelemetry-autoconfigure`\n2. **Set meaningful span names** — Use descriptive operation names\n3. **Add relevant attributes** — Include contextual data for debugging\n4. **Handle exceptions** — Always record exceptions on spans\n5. **Use semantic conventions** — Follow OpenTelemetry semantic conventions\n6. **End spans in finally** — Ensure spans are always ended\n7. **Use try-with-resources** — Scope management with try-with-resources pattern\n\n## Reference Links\n\n| Resource | URL |\n|----------|-----|\n| Maven Package | https:\u002F\u002Fcentral.sonatype.com\u002Fartifact\u002Fcom.azure\u002Fazure-monitor-opentelemetry-exporter |\n| GitHub | https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-for-java\u002Ftree\u002Fmain\u002Fsdk\u002Fmonitor\u002Fazure-monitor-opentelemetry-exporter |\n| Migration Guide | https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-for-java\u002Fblob\u002Fmain\u002Fsdk\u002Fmonitor\u002Fazure-monitor-opentelemetry-exporter\u002FMIGRATION.md |\n| Autoconfigure Package | https:\u002F\u002Fcentral.sonatype.com\u002Fartifact\u002Fcom.azure\u002Fazure-monitor-opentelemetry-autoconfigure |\n| OpenTelemetry Java | https:\u002F\u002Fopentelemetry.io\u002Fdocs\u002Flanguages\u002Fjava\u002F |\n| Application Insights | https:\u002F\u002Flearn.microsoft.com\u002Fazure\u002Fazure-monitor\u002Fapp\u002Fapp-insights-overview |\n","# Azure Monitor OpenTelemetry Exporter for Java\n\n> **⚠️ DEPRECATION NOTICE**: This package is deprecated. Migrate to `azure-monitor-opentelemetry-autoconfigure`.\n>\n> See [Migration Guide](https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-for-java\u002Fblob\u002Fmain\u002Fsdk\u002Fmonitor\u002Fazure-monitor-opentelemetry-exporter\u002FMIGRATION.md) for detailed instructions.\n\nExport OpenTelemetry telemetry data to Azure Monitor \u002F Application Insights.\n\n## Installation (Deprecated)\n\n```xml\n\u003Cdependency>\n    \u003CgroupId>com.azure\u003C\u002FgroupId>\n    \u003CartifactId>azure-monitor-opentelemetry-exporter\u003C\u002FartifactId>\n    \u003Cversion>1.0.0-beta.x\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\n\n## Recommended: Use Autoconfigure Instead\n\n```xml\n\u003Cdependency>\n    \u003CgroupId>com.azure\u003C\u002FgroupId>\n    \u003CartifactId>azure-monitor-opentelemetry-autoconfigure\u003C\u002FartifactId>\n    \u003Cversion>LATEST\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\n\n## Environment Variables\n\n```bash\nAPPLICATIONINSIGHTS_CONNECTION_STRING=InstrumentationKey=xxx;IngestionEndpoint=https:\u002F\u002Fxxx.in.applicationinsights.azure.com\u002F\n```\n\n## Basic Setup with Autoconfigure (Recommended)\n\n### Using Environment Variable\n\n```java\nimport io.opentelemetry.sdk.autoconfigure.AutoConfiguredOpenTelemetrySdk;\nimport io.opentelemetry.sdk.autoconfigure.AutoConfiguredOpenTelemetrySdkBuilder;\nimport io.opentelemetry.api.OpenTelemetry;\nimport com.azure.monitor.opentelemetry.exporter.AzureMonitorExporter;\n\n\u002F\u002F Connection string from APPLICATIONINSIGHTS_CONNECTION_STRING env var\nAutoConfiguredOpenTelemetrySdkBuilder sdkBuilder = AutoConfiguredOpenTelemetrySdk.builder();\nAzureMonitorExporter.customize(sdkBuilder);\nOpenTelemetry openTelemetry = sdkBuilder.build().getOpenTelemetrySdk();\n```\n\n### With Explicit Connection String\n\n```java\nAutoConfiguredOpenTelemetrySdkBuilder sdkBuilder = AutoConfiguredOpenTelemetrySdk.builder();\nAzureMonitorExporter.customize(sdkBuilder, \"{connection-string}\");\nOpenTelemetry openTelemetry = sdkBuilder.build().getOpenTelemetrySdk();\n```\n\n## Creating Spans\n\n```java\nimport io.opentelemetry.api.trace.Tracer;\nimport io.opentelemetry.api.trace.Span;\nimport io.opentelemetry.context.Scope;\n\n\u002F\u002F Get tracer\nTracer tracer = openTelemetry.getTracer(\"com.example.myapp\");\n\n\u002F\u002F Create span\nSpan span = tracer.spanBuilder(\"myOperation\").startSpan();\n\ntry (Scope scope = span.makeCurrent()) {\n    \u002F\u002F Your application logic\n    doWork();\n} catch (Throwable t) {\n    span.recordException(t);\n    throw t;\n} finally {\n    span.end();\n}\n```\n\n## Adding Span Attributes\n\n```java\nimport io.opentelemetry.api.common.AttributeKey;\nimport io.opentelemetry.api.common.Attributes;\n\nSpan span = tracer.spanBuilder(\"processOrder\")\n    .setAttribute(\"order.id\", \"12345\")\n    .setAttribute(\"customer.tier\", \"premium\")\n    .startSpan();\n\ntry (Scope scope = span.makeCurrent()) {\n    \u002F\u002F Add attributes during execution\n    span.setAttribute(\"items.count\", 3);\n    span.setAttribute(\"total.amount\", 99.99);\n    \n    processOrder();\n} finally {\n    span.end();\n}\n```\n\n## Custom Span Processor\n\n```java\nimport io.opentelemetry.sdk.trace.SpanProcessor;\nimport io.opentelemetry.sdk.trace.ReadWriteSpan;\nimport io.opentelemetry.sdk.trace.ReadableSpan;\nimport io.opentelemetry.context.Context;\n\nprivate static final AttributeKey\u003CString> CUSTOM_ATTR = AttributeKey.stringKey(\"custom.attribute\");\n\nSpanProcessor customProcessor = new SpanProcessor() {\n    @Override\n    public void onStart(Context context, ReadWriteSpan span) {\n        \u002F\u002F Add custom attribute to every span\n        span.setAttribute(CUSTOM_ATTR, \"customValue\");\n    }\n\n    @Override\n    public boolean isStartRequired() {\n        return true;\n    }\n\n    @Override\n    public void onEnd(ReadableSpan span) {\n        \u002F\u002F Post-processing if needed\n    }\n\n    @Override\n    public boolean isEndRequired() {\n        return false;\n    }\n};\n\n\u002F\u002F Register processor\nAutoConfiguredOpenTelemetrySdkBuilder sdkBuilder = AutoConfiguredOpenTelemetrySdk.builder();\nAzureMonitorExporter.customize(sdkBuilder);\n\nsdkBuilder.addTracerProviderCustomizer(\n    (sdkTracerProviderBuilder, configProperties) -> \n        sdkTracerProviderBuilder.addSpanProcessor(customProcessor)\n);\n\nOpenTelemetry openTelemetry = sdkBuilder.build().getOpenTelemetrySdk();\n```\n\n## Nested Spans\n\n```java\npublic void parentOperation() {\n    Span parentSpan = tracer.spanBuilder(\"parentOperation\").startSpan();\n    try (Scope scope = parentSpan.makeCurrent()) {\n        childOperation();\n    } finally {\n        parentSpan.end();\n    }\n}\n\npublic void childOperation() {\n    \u002F\u002F Automatically links to parent via Context\n    Span childSpan = tracer.spanBuilder(\"childOperation\").startSpan();\n    try (Scope scope = childSpan.makeCurrent()) {\n        \u002F\u002F Child work\n    } finally {\n        childSpan.end();\n    }\n}\n```\n\n## Recording Exceptions\n\n```java\nSpan span = tracer.spanBuilder(\"riskyOperation\").startSpan();\ntry (Scope scope = span.makeCurrent()) {\n    performRiskyWork();\n} catch (Exception e) {\n    span.recordException(e);\n    span.setStatus(StatusCode.ERROR, e.getMessage());\n    throw e;\n} finally {\n    span.end();\n}\n```\n\n## Metrics (via OpenTelemetry)\n\n```java\nimport io.opentelemetry.api.metrics.Meter;\nimport io.opentelemetry.api.metrics.LongCounter;\nimport io.opentelemetry.api.metrics.LongHistogram;\n\nMeter meter = openTelemetry.getMeter(\"com.example.myapp\");\n\n\u002F\u002F Counter\nLongCounter requestCounter = meter.counterBuilder(\"http.requests\")\n    .setDescription(\"Total HTTP requests\")\n    .setUnit(\"requests\")\n    .build();\n\nrequestCounter.add(1, Attributes.of(\n    AttributeKey.stringKey(\"http.method\"), \"GET\",\n    AttributeKey.longKey(\"http.status_code\"), 200L\n));\n\n\u002F\u002F Histogram\nLongHistogram latencyHistogram = meter.histogramBuilder(\"http.latency\")\n    .setDescription(\"Request latency\")\n    .setUnit(\"ms\")\n    .ofLongs()\n    .build();\n\nlatencyHistogram.record(150, Attributes.of(\n    AttributeKey.stringKey(\"http.route\"), \"\u002Fapi\u002Fusers\"\n));\n```\n\n## Key Concepts\n\n| Concept | Description |\n|---------|-------------|\n| Connection String | Application Insights connection string with instrumentation key |\n| Tracer | Creates spans for distributed tracing |\n| Span | Represents a unit of work with timing and attributes |\n| SpanProcessor | Intercepts span lifecycle for customization |\n| Exporter | Sends telemetry to Azure Monitor |\n\n## Migration to Autoconfigure\n\nThe `azure-monitor-opentelemetry-autoconfigure` package provides:\n- Automatic instrumentation of common libraries\n- Simplified configuration\n- Better integration with OpenTelemetry SDK\n\n### Migration Steps\n\n1. Replace dependency:\n   ```xml\n   \u003C!-- Remove -->\n   \u003Cdependency>\n       \u003CgroupId>com.azure\u003C\u002FgroupId>\n       \u003CartifactId>azure-monitor-opentelemetry-exporter\u003C\u002FartifactId>\n   \u003C\u002Fdependency>\n   \n   \u003C!-- Add -->\n   \u003Cdependency>\n       \u003CgroupId>com.azure\u003C\u002FgroupId>\n       \u003CartifactId>azure-monitor-opentelemetry-autoconfigure\u003C\u002FartifactId>\n   \u003C\u002Fdependency>\n   ```\n\n2. Update initialization code per [Migration Guide](https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-for-java\u002Fblob\u002Fmain\u002Fsdk\u002Fmonitor\u002Fazure-monitor-opentelemetry-exporter\u002FMIGRATION.md)\n\n## Best Practices\n\n1. **Use autoconfigure** — Migrate to `azure-monitor-opentelemetry-autoconfigure`\n2. **Set meaningful span names** — Use descriptive operation names\n3. **Add relevant attributes** — Include contextual data for debugging\n4. **Handle exceptions** — Always record exceptions on spans\n5. **Use semantic conventions** — Follow OpenTelemetry semantic conventions\n6. **End spans in finally** — Ensure spans are always ended\n7. **Use try-with-resources** — Scope management with try-with-resources pattern\n\n## Reference Links\n\n| Resource | URL |\n|----------|-----|\n| Maven Package | https:\u002F\u002Fcentral.sonatype.com\u002Fartifact\u002Fcom.azure\u002Fazure-monitor-opentelemetry-exporter |\n| GitHub | https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-for-java\u002Ftree\u002Fmain\u002Fsdk\u002Fmonitor\u002Fazure-monitor-opentelemetry-exporter |\n| Migration Guide | https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-for-java\u002Fblob\u002Fmain\u002Fsdk\u002Fmonitor\u002Fazure-monitor-opentelemetry-exporter\u002FMIGRATION.md |\n| Autoconfigure Package | https:\u002F\u002Fcentral.sonatype.com\u002Fartifact\u002Fcom.azure\u002Fazure-monitor-opentelemetry-autoconfigure |\n| OpenTelemetry Java | https:\u002F\u002Fopentelemetry.io\u002Fdocs\u002Flanguages\u002Fjava\u002F |\n| Application Insights | https:\u002F\u002Flearn.microsoft.com\u002Fazure\u002Fazure-monitor\u002Fapp\u002Fapp-insights-overview |\n",{"name":5,"package":40,"description":41},"com.azure:azure-monitor-opentelemetry-exporter","Azure Monitor OpenTelemetry Exporter for Java. Export OpenTelemetry traces, metrics, and logs to Azure Monitor\u002FApplication Insights.\nTriggers: \"AzureMonitorExporter java\", \"opentelemetry azure java\", \"application insights java otel\", \"azure monitor tracing java\".\nNote: This package is DEPRECATED. Migrate to azure-monitor-opentelemetry-autoconfigure.\n","main","def8531e65114c0fca8fb8551c1871ee0eed705c","skills\u002Faiskillstore\u002Fmarketplace\u002Fazure-monitor-opentelemetry-exporter-java\u002Fazure-monitor-opentelemetry-exporter-java",24,"https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub","https:\u002F\u002Fskillshub.wtf","https:\u002F\u002Fgithub.com\u002FComeOnOliver","AI & Blockchain Engineer\r\n","2026-06-24 22:07:19",{"source":8,"skillName":5,"commands":52,"prompt":62,"zipAvailable":63},[53,56,59],{"tool":54,"command":55},"npx","npx skills add ComeOnOliver\u002Fskillshub --skill azure-monitor-opentelemetry-exporter-java",{"tool":57,"command":58},"bunx","bunx skills add ComeOnOliver\u002Fskillshub --skill azure-monitor-opentelemetry-exporter-java",{"tool":60,"command":61},"pnpm","pnpm dlx skills add ComeOnOliver\u002Fskillshub --skill azure-monitor-opentelemetry-exporter-java","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Faiskillstore\u002Fmarketplace\u002Fazure-monitor-opentelemetry-exporter-java\u002Fazure-monitor-opentelemetry-exporter-java\u002FSKILL.md",true,[65,71,75,79,83,87,91,94,97,101,105,108,112,116,120,124],{"path":66,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":69,"sourceHtmlUrl":70},"_overrides\u002Ffrontmatter.yaml","REFERENCE","参考文档",6498,"https:\u002F\u002Fgithub.com\u002FAgntUX\u002FAUX-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fagntux-zoom\u002Fskills\u002Fagntux-zoom\u002F_overrides\u002Ffrontmatter.yaml",{"path":72,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":73,"sourceHtmlUrl":74},"_overrides\u002Freference\u002Fcompose-payload.md",6652,"https:\u002F\u002Fgithub.com\u002FAgntUX\u002FAUX-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fagntux-zoom\u002Fskills\u002Fagntux-zoom\u002F_overrides\u002Freference\u002Fcompose-payload.md",{"path":76,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":77,"sourceHtmlUrl":78},"_overrides\u002Freference\u002Fcursor.md",15463,"https:\u002F\u002Fgithub.com\u002FAgntUX\u002FAUX-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fagntux-zoom\u002Fskills\u002Fagntux-zoom\u002F_overrides\u002Freference\u002Fcursor.md",{"path":80,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":81,"sourceHtmlUrl":82},"_overrides\u002Freference\u002Ffetch.md",20629,"https:\u002F\u002Fgithub.com\u002FAgntUX\u002FAUX-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fagntux-zoom\u002Fskills\u002Fagntux-zoom\u002F_overrides\u002Freference\u002Ffetch.md",{"path":84,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":85,"sourceHtmlUrl":86},"_overrides\u002Fstep-reconcile-append.md",465,"https:\u002F\u002Fgithub.com\u002FAgntUX\u002FAUX-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fagntux-zoom\u002Fskills\u002Fagntux-zoom\u002F_overrides\u002Fstep-reconcile-append.md",{"path":88,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":89,"sourceHtmlUrl":90},"reference\u002Fask.md",2302,"https:\u002F\u002Fgithub.com\u002FAgntUX\u002FAUX-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fagntux-zoom\u002Fskills\u002Fagntux-zoom\u002Freference\u002Fask.md",{"path":92,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":73,"sourceHtmlUrl":93},"reference\u002Fcompose-payload.md","https:\u002F\u002Fgithub.com\u002FAgntUX\u002FAUX-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fagntux-zoom\u002Fskills\u002Fagntux-zoom\u002Freference\u002Fcompose-payload.md",{"path":95,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":77,"sourceHtmlUrl":96},"reference\u002Fcursor.md","https:\u002F\u002Fgithub.com\u002FAgntUX\u002FAUX-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fagntux-zoom\u002Fskills\u002Fagntux-zoom\u002Freference\u002Fcursor.md",{"path":98,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":99,"sourceHtmlUrl":100},"reference\u002Fdata-access.md",4998,"https:\u002F\u002Fgithub.com\u002FAgntUX\u002FAUX-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fagntux-zoom\u002Fskills\u002Fagntux-zoom\u002Freference\u002Fdata-access.md",{"path":102,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":103,"sourceHtmlUrl":104},"reference\u002Fdeep-links.md",1255,"https:\u002F\u002Fgithub.com\u002FAgntUX\u002FAUX-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fagntux-zoom\u002Fskills\u002Fagntux-zoom\u002Freference\u002Fdeep-links.md",{"path":106,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":81,"sourceHtmlUrl":107},"reference\u002Ffetch.md","https:\u002F\u002Fgithub.com\u002FAgntUX\u002FAUX-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fagntux-zoom\u002Fskills\u002Fagntux-zoom\u002Freference\u002Ffetch.md",{"path":109,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":110,"sourceHtmlUrl":111},"reference\u002Fhonesty.md",1918,"https:\u002F\u002Fgithub.com\u002FAgntUX\u002FAUX-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fagntux-zoom\u002Fskills\u002Fagntux-zoom\u002Freference\u002Fhonesty.md",{"path":113,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":114,"sourceHtmlUrl":115},"reference\u002Freconcile.md",4574,"https:\u002F\u002Fgithub.com\u002FAgntUX\u002FAUX-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fagntux-zoom\u002Fskills\u002Fagntux-zoom\u002Freference\u002Freconcile.md",{"path":117,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":118,"sourceHtmlUrl":119},"reference\u002Frunbook.md",5024,"https:\u002F\u002Fgithub.com\u002FAgntUX\u002FAUX-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fagntux-zoom\u002Fskills\u002Fagntux-zoom\u002Freference\u002Frunbook.md",{"path":121,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":122,"sourceHtmlUrl":123},"reference\u002Fsync.md",43988,"https:\u002F\u002Fgithub.com\u002FAgntUX\u002FAUX-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fagntux-zoom\u002Fskills\u002Fagntux-zoom\u002Freference\u002Fsync.md",{"path":125,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":126,"sourceHtmlUrl":127},"skill-report.json",9247,"https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Faiskillstore\u002Fmarketplace\u002Fazure-monitor-opentelemetry-exporter-java\u002Fazure-monitor-opentelemetry-exporter-java\u002Fskill-report.json",[129,143,153,162,168,175],{"skillNo":130,"name":131,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":132,"categories":133,"keywords":139,"publishedAt":35},"01M6FKJN13GMG4KY57J3QD8GY5","model-hierarchy-skill","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzscole\u002Fmodel-hierarchy-skill\u002Fmodel-hierarchy-skill\u002FSKILL.md",[134],{"categoryNo":135,"categoryName":136,"taxonomyType":137,"taxonomyTypeDesc":138},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[140,141,142],"model","model hierarchy","model hierarchy skill",{"skillNo":144,"name":145,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":146,"categories":147,"keywords":149,"publishedAt":35},"01M6FKJJJ6GCAMR4PPPRD12M5X","zoom-mcp","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-mcp\u002FSKILL.md",[148],{"categoryNo":135,"categoryName":136,"taxonomyType":137,"taxonomyTypeDesc":138},[150,151,152],"MCP","zoom","zoom mcp",{"skillNo":154,"name":155,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":156,"categories":157,"keywords":158,"publishedAt":35},"01M6FKJE3KYT3KPEZMEEHYKA6K","zoom-apps-sdk","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-apps-sdk\u002FSKILL.md",[],[159,160,161,151],"sdk","zoom apps sdk","apps",{"skillNo":163,"name":164,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":165,"categories":166,"keywords":167,"publishedAt":35},"01M6FKJ9EDH9Q5VWDF8HAJRSP0","windows","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwindows\u002FSKILL.md",[],[164],{"skillNo":169,"name":170,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":171,"categories":172,"keywords":174,"publishedAt":35},"01M6FKJ666BEEFC3AE9GJ72Q93","whiteboard","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwhiteboard\u002FSKILL.md",[173],{"categoryNo":135,"categoryName":136,"taxonomyType":137,"taxonomyTypeDesc":138},[170],{"skillNo":176,"name":177,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":178,"categories":179,"keywords":180,"publishedAt":35},"01M6FKJ21WFCDGTJQ2Q91T9DVW","websockets","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwebsockets\u002FSKILL.md",[],[177]]