All Projects → stefanprodan → prometheus.aspnetcore

stefanprodan / prometheus.aspnetcore

Licence: MIT license
Prometheus instrumentation for .NET Core

Programming Languages

C#
18002 projects
shell
77523 projects
powershell
5483 projects

Projects that are alternatives of or similar to prometheus.aspnetcore

aspnetcore2aadauth
ASP.NET Core 2.0 Azure AD authentication example
Stars: ✭ 37 (+27.59%)
Mutual labels:  asp-net-core
NClient
💫 NClient is an automatic type-safe .Net HTTP client that allows you to call web service API methods using annotated interfaces or controllers without boilerplate code.
Stars: ✭ 25 (-13.79%)
Mutual labels:  asp-net-core
SQRL-For-Dot-Net-Standard
SQRL for the .Net Standard runtimes. Secure Quick Reliable Login is a highly secure user privacy based authentication system that removes the need for users to have more than one password for a global identity https://www.grc.com/sqrl/sqrl.htm for more information of the protocal.
Stars: ✭ 26 (-10.34%)
Mutual labels:  asp-net-core
CRUD.ASPCore.Reactjs.WebAPI.EF
CRUD Operations in ASP.NET Core application using React.js , Web API and Entity Framework core DB first approach with the help of VS 2017.
Stars: ✭ 80 (+175.86%)
Mutual labels:  asp-net-core
RestWithASP-NETUdemy
No description or website provided.
Stars: ✭ 40 (+37.93%)
Mutual labels:  asp-net-core
simple-blog-back
Back-End for Simple Blog
Stars: ✭ 36 (+24.14%)
Mutual labels:  asp-net-core
Blog.Core
Simple ASP.NET Core static blog engine
Stars: ✭ 15 (-48.28%)
Mutual labels:  asp-net-core
ExcelExport
Classes to generate Excel/CSV Report in ASP.NET Core
Stars: ✭ 39 (+34.48%)
Mutual labels:  asp-net-core
AspNetCoreMvcAngular
ASP.NET Core MVC with angular in MVC View OpenID Connect Hybrid Flow
Stars: ✭ 54 (+86.21%)
Mutual labels:  asp-net-core
high-performance-aspnet-core-workshop
Sample application used in the High-Performance ASP.NET Core Workshop
Stars: ✭ 29 (+0%)
Mutual labels:  asp-net-core
Asmin
Asmin is .NET CORE project infrastructure, to get a quick start on the project.
Stars: ✭ 89 (+206.9%)
Mutual labels:  asp-net-core
SimpleSocial
A simple social network web application using ASP.NET Core 3.1
Stars: ✭ 16 (-44.83%)
Mutual labels:  asp-net-core
PressCenters.com
News aggregator for the press releases of the Bulgarian government sites written in ASP.NET Core
Stars: ✭ 91 (+213.79%)
Mutual labels:  asp-net-core
Database-First-ASP.Net-Core
Demo implementation of a Database First REST API in ASP.Net Core
Stars: ✭ 17 (-41.38%)
Mutual labels:  asp-net-core
ProductsStoreOnKubernetes
Demoing deployment of Docker containers into Kubernetes for both minikube and Azure AKS.
Stars: ✭ 90 (+210.34%)
Mutual labels:  asp-net-core
Configuration.Provider.Docker.Secrets
.NET Core configuration provider for Docker Secrets.
Stars: ✭ 20 (-31.03%)
Mutual labels:  asp-net-core
Demo.AspNetCore.WebApi
Sample Web API powered by ASP.NET Core MVC, Azure Cosmos DB and MediatR
Stars: ✭ 24 (-17.24%)
Mutual labels:  asp-net-core
AspNetCore-Dynamic-Permission
Dynamic Permission Samples in ASP.NET Core and ASP.NET MVC 5.
Stars: ✭ 19 (-34.48%)
Mutual labels:  asp-net-core
ImageResize
Image resizing tool for .Net applications with ability to add text/image watermark, Supports animated images as well.
Stars: ✭ 45 (+55.17%)
Mutual labels:  asp-net-core
MediatR.AspNetCore.Endpoints
No description or website provided.
Stars: ✭ 89 (+206.9%)
Mutual labels:  asp-net-core

Monitoring ASP.NET Core apps with Prometheus

Services:

  • app-proxy (receives the json payload)
  • app (receives the json payload from app-proxy)
  • app-ping (pings each service every 100ms)

Running the stack:

docker pull microsoft/dotnet:latest
docker build -t prom-app .

docker network create promapp-net

docker run -d --network promapp-net -p 5200:5000 --name app --restart unless-stopped prom-app
docker run -d --network promapp-net -p 5100:5000 --name app-proxy --restart unless-stopped -e PROXY_FOR='http://app:5000' prom-app
docker run -d --network promapp-net -p 5300:5000 --name app-ping --restart unless-stopped -e PING_INTERVAL="100" -e PING_TARGETS='http://app:5000,http://app-proxy:5000' prom-app

Load test:

 ab -k -l -p payload.json -T application/json -c 50 -n 10000 http://<HOST-IP>:5100/ingest/event

payload.json

{
	"Log": "{Data:'mock data'}"
}

Prometheus targets:

  - job_name: 'aspnetcore'
    scrape_interval: 10s
    static_configs:
      - targets: ['app:5000', 'app-proxy:5000', 'app-ping:5000']

Proxy metrics:

# HELP dotnet_http_requests_total HTTP Requests Total
# TYPE dotnet_http_requests_total COUNTER
dotnet_http_requests_total{path="/ingest/eventlog",method="POST",status="200"} 347000
dotnet_http_requests_total{path="/Home/Ping",method="GET",status="200"} 487393
dotnet_http_requests_total{path="/favicon.ico",method="GET",status="404"} 1
dotnet_http_requests_total{path="/",method="GET",status="200"} 2
dotnet_http_requests_total{path="/home/ping",method="GET",status="200"} 10000
dotnet_http_requests_total{path="/ingest/event",method="POST",status="200"} 226798

Ping metrics:

# HELP dotnet_ping_requests_total Ping Requests Total
# TYPE dotnet_ping_requests_total COUNTER
dotnet_ping_requests_total{target="http://app:5000",status="200"} 1467989
dotnet_ping_requests_total{target="http://app-proxy:5000",status="500"} 57
dotnet_ping_requests_total{target="http://app-proxy:5000",status="200"} 1467932
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].