Giter Club home page Giter Club logo

azure-voting-app-dotnet's Introduction

Azure Voting App (.NET)

This sample is the .NET implementation of the official Azure Voting App. This sample creates a multi-container application in a Kubernetes cluster like the original one.

The application interface is built using ASP.NET Core Blazor Server. The data component uses Redis.

This sample also includes the following features:

  1. Instrumented to produce OpenTelemetry traces and export the traces to the console.
  2. Request to GET /traced-exception endpoint will throw an exception. It shows how unhandled exceptions are logged in the active OpenTelemtry span.
  3. Instrumented to emit built-in .NET metrics and custom metrics with the OpenTelemetry Metrics SDK.
  4. Deployment with Helm, Kubernetes manifest, or Docker compose.

Note

  1. The previous version of this application used prometheus-net to expose metrics to Prometheus on the /metrics endpoint. The main branch uses OTEL Metrics SDK to send metrics to the destination. You can use the commit tagged prometheus-metrics to refer to the previous version of the application.
  2. The application sends traces and metrics to the console exporter by default. You can set the environment variable EnableOtlpExporter to true to send traces and metrics to the local OTEL collector. Update the values of the connection strings OTLPMetricsExporterEndpoint and OTLPTracesExporterEndpoint if you want to send the metrics and traces to a remote OTLP endpoint. You can launch the application and the local OTEL collector with the following command:
docker-compose --profile local-collector up

Demo

Demo

azure-voting-app-dotnet's People

Contributors

rahulrai-in avatar sajanep avatar sajanemmanuel avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.