[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CS62RJW4HHRK2F1WDHC6YV":3,"skill-same:01M6CS62RJW4HHRK2F1WDHC6YV":81},{"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":30,"linkOnly":31,"markdownContent":32,"markdownBody":33,"frontMatter":34,"refName":37,"commitSha":38,"skillDirectory":39,"forksCount":40,"repositoryHtmlUrl":41,"repositoryHomepageUrl":41,"ownerHtmlUrl":42,"ownerBlogUrl":6,"ownerDescription":43,"updatedAt":44,"install":45,"resources":58},"01M6CS62RJW4HHRK2F1WDHC6YV","azure-monitor-opentelemetry-exporter-java",null,"Azure Monitor OpenTelemetry Exporter for Java. Export OpenTelemetry traces, metrics, and logs to Azure Monitor\u002FApplication Insights.","Sam-06060\u002Fjarvis-assistant","Sam-06060","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F208600848?v=4","01M6CRKT7C7FXD21V6HXF293S0","Samson Frank Ganta","01M6CRKTBEKYFD8YX5Z1GT99EE",6,"Apache-2.0","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fazure-monitor-opentelemetry-exporter-java\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29],"azure","azure monitor opentelemetry exporter java","monitor","java","OpenTelemetry","azure monitor","metrics","logs","export","community","application","2026-11-10 10:12:30",false,"---\nname: azure-monitor-opentelemetry-exporter-java\ndescription: Azure Monitor OpenTelemetry Exporter for Java. Export OpenTelemetry traces, metrics, and logs to Azure Monitor\u002FApplication Insights.\nrisk: unknown\nsource: community\ndate_added: '2026-02-27'\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\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the 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\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n",{"name":5,"risk":35,"source":28,"date_added":36,"description":7},"unknown","2026-02-27","main","a50a3aa6b39fb0e1b7db88bef1bfc9c93606e126","modules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fazure-monitor-opentelemetry-exporter-java",0,"https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant","https:\u002F\u002Fgithub.com\u002FSam-06060","Mobile Application Developer | Kotlin | Flutter, KMP, Swfit, Android,Swift UI | Building at Saar It Resources | Creator of Jarvis (AI Assistant)","2026-06-23 05:13:38",{"source":8,"skillName":5,"commands":46,"prompt":56,"zipAvailable":57},[47,50,53],{"tool":48,"command":49},"npx","npx skills add Sam-06060\u002Fjarvis-assistant --skill azure-monitor-opentelemetry-exporter-java",{"tool":51,"command":52},"bunx","bunx skills add Sam-06060\u002Fjarvis-assistant --skill azure-monitor-opentelemetry-exporter-java",{"tool":54,"command":55},"pnpm","pnpm dlx skills add Sam-06060\u002Fjarvis-assistant --skill azure-monitor-opentelemetry-exporter-java","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fazure-monitor-opentelemetry-exporter-java\u002FSKILL.md",true,[59,65,69,73,77],{"path":60,"resourceType":61,"resourceTypeDesc":62,"sizeBytes":63,"sourceHtmlUrl":64},"_meta.json","REFERENCE","参考文档",150,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Ftrading\u002Fmemecoin-trader\u002F_meta.json",{"path":66,"resourceType":61,"resourceTypeDesc":62,"sizeBytes":67,"sourceHtmlUrl":68},"openclaw.example.json",830,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Ftrading\u002Fmemecoin-trader\u002Fopenclaw.example.json",{"path":70,"resourceType":61,"resourceTypeDesc":62,"sizeBytes":71,"sourceHtmlUrl":72},"skill-card.md",2445,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Ftrading\u002Fmemecoin-trader\u002Fskill-card.md",{"path":74,"resourceType":61,"resourceTypeDesc":62,"sizeBytes":75,"sourceHtmlUrl":76},"SOURCE.md",286,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Ftrading\u002Fmemecoin-trader\u002FSOURCE.md",{"path":78,"resourceType":61,"resourceTypeDesc":62,"sizeBytes":79,"sourceHtmlUrl":80},"TRUST.auto.yaml",2272,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Ftrading\u002Fmemecoin-trader\u002FTRUST.auto.yaml",[82,95,111,138,157,184],{"skillNo":83,"name":84,"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":85,"categories":86,"keywords":92,"publishedAt":30},"01M6GDRVS6FXX3ESH0C9DW01C0","test_skill","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fscratch\u002Ftest_skill\u002FSKILL.md",[87],{"categoryNo":88,"categoryName":89,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",[93,94],"Test Skill","test",{"skillNo":96,"name":97,"nameZh":6,"description":98,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":99,"categories":100,"keywords":101,"publishedAt":30},"01M6GDRQ40HX22MA6XWC31RHHK","zustand-store-ts","Create Zustand stores following established patterns with proper TypeScript types and middleware.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzustand-store-ts\u002FSKILL.md",[],[102,103,104,105,106,107,108,28,109,110],"zustand store ts","zustand","store","with","types","middleware","patterns","create","typescript",{"skillNo":112,"name":113,"nameZh":6,"description":114,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":115,"categories":116,"keywords":120,"publishedAt":30},"01M6GDRKEA0WE670SPFWX5GKCN","zoom-automation","Automate Zoom meeting creation, management, recordings, webinars, and participant tracking via Rube MCP (Composio). Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzoom-automation\u002FSKILL.md",[117],{"categoryNo":118,"categoryName":119,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000023","Skill与智能体开发",[121,122,123,124,125,126,127,128,129,130,131,132,133,134,28,135,136,137],"automation","zoom automation","zoom","first","Tools","search","MCP","via","meeting","automate","critical","creation","webinars","composio","recordings","management","tracking",{"skillNo":139,"name":140,"nameZh":6,"description":141,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":142,"categories":143,"keywords":145,"publishedAt":30},"01M6GDRFS1452PC71JQ38S24HR","zoho-crm-automation","Automate Zoho CRM tasks via Rube MCP (Composio): create\u002Fupdate records, search contacts, manage leads, and convert leads. Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzoho-crm-automation\u002FSKILL.md",[144],{"categoryNo":118,"categoryName":119,"taxonomyType":90,"taxonomyTypeDesc":91},[146,121,147,148,149,150,151,28,126,152,134,153,131,130,125,154,109,155,127,156],"crm automation","zoho crm","crm","zoho crm automation","zoho","leads","contacts","records","update","tasks","manage",{"skillNo":158,"name":159,"nameZh":6,"description":160,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":161,"categories":162,"keywords":166,"publishedAt":30},"01M6GDRCKQBAVTGHX5XBH26KPZ","zod-validation-expert","Expert in Zod — TypeScript-first schema validation. Covers parsing, custom errors, refinements, type inference, and integration with React Hook Form, Next.js, and tRPC.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzod-validation-expert\u002FSKILL.md",[163],{"categoryNo":164,"categoryName":165,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000009","前端开发",[167,168,169,170,171,110,172,173,174,175,176,177,105,178,179,180,181,28,182,183],"expert","zod","zod validation expert","validation","react","safe","parsing","errors","schema validation","react hook form","hook","trpc","form","type","next","schema","Next.js",{"skillNo":185,"name":186,"nameZh":6,"description":187,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":188,"categories":189,"keywords":191,"publishedAt":30},"01M6GDR658B08K4MY0RWD4A6EH","zeroize-audit","Detects missing zeroization of sensitive data in source code and identifies zeroization removed by compiler optimizations, with assembly-level analysis, and control-flow verification. Use for auditing C\u002FC++\u002FRust code handling secrets, keys, passwords, or other sensitive data.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzeroize-audit\u002FSKILL.md",[190],{"categoryNo":118,"categoryName":119,"taxonomyType":90,"taxonomyTypeDesc":91},[192,193,194,195,196,197,198,199,28,200,201,202,203,204,205,206,207,208,209,127],"zeroize audit","audit","write","passwords","get","project","c++","activate","assembly","read","Bash","secrets","analysis","data","flow","verification","code","rust"]