Almost Wrong Way To Send Docker Containers logs To ELK

In this article, we’ll walk through setting up a Docker-based ELK (Elasticsearch, Logstash, and Kibana) stack to collect, view, and send Docker logs. services: elasticsearch: image: elasticsearch:7.17.24 environment: - discovery.type=single-node volumes: - ./elasticsearch_data/:/usr/share/elasticsearch/data mem_limit: "1g" redis-cache: image: redis:7.4.0 logstash-agent: image: logstash:7.17.24 volumes: - ./logstash-agent:/etc/logstash command: logstash -f /etc/logstash/logstash.conf depends_on: - elasticsearch ports: - 12201:12201/udp logstash-central: image: logstash:7.17.24 volumes: - ./logstash-central:/etc/logstash command: logstash -f /etc/logstash/logstash.conf depends_on: - elasticsearch kibana: image: kibana:7.17.24 ports: - 5601:5601 environment: - ELASTICSEARCH_HOSTS=http://elasticsearch:9200 depends_on: - elasticsearch ElasticSearch Just create a folder named elasticsearch_data for storing data....

October 16, 2024 · 3 min · Alex Popescu

Azure AD Authentication for C# WebAPI with Swagger

Introduction Have you ever wanted to add Azure AD authentication to a C# WebApi project for .NET 8? Now you can. The Code First, let’s create a new WebAPI project: dotnet new webapi --use-controllers Next, add the required package: dotnet add package Microsoft.AspNetCore.Authentication.JwtBearer Next, we need to add the Azure AD settings in appsettings.json: "AzureAd": { "Instance": "https://login.microsoftonline.com/", "TenantId": "yyyy", "ClientId": "xxxxx" } Replace yyyy with the correct TenantId and xxxxx with the correct Azure SPN Client Id....

April 23, 2024 · 2 min · Alex Popescu

Using Serilog with Azure Log Stream

Continuing of our previous article here, let’s explore how to show the logs in Azure Log Stream. Integrating Serilog To begin, incorporate Serilog into your project using Visual Studio or the .NET CLI: # Using Visual Studio Install-Package Serilog.AspNetCore # Using .NET CLI dotnet add package Serilog.AspNetCore Configuring Serilog Add the necessary configuration settings in your appsettings.json file, resembling the structure below: "Serilog": { "Using": ["Serilog.Sinks.Console", "Serilog.Sinks.File"], "MinimumLevel": "Debug", "WriteTo": [ { "Name": "Console" }, { "Name": "File", "Args": { "path": "Logs/applog-....

December 6, 2023 · 2 min · Alex Popescu

Configuring CTCI Device on Windows with WiFi Adaptor

Have you ever struggled with setting up a CTCI device on Windows 10/11 with a WiFi adapter? Fear not! This guide will walk you through the process using the versatile Microsoft Loopback Adapter. Now you can using Microsoft Loopback Adaptor. Install Microsoft Loopback Adapter Begin by installing the Microsoft Loopback Adapter, also known as the Microsoft KM-TEST Loopback Adapter. You can follow a similar method outlined here Configuring After successful installation, proceed to configure the Loopback adapter with the IP address 192....

November 27, 2023 · 1 min · Alex Popescu

Overriding appsettings.json on Azure Web App

This article demonstrates how to override app settings values on Azure Web App by creating a straightforward RESTful Web API service, deploying it to Azure Web App, and then overriding specific settings. Web API Creation To start, create a simple .NET 6 application (the latest LTS version at the time of writing) using the following command: dotnet new webapi -o TestApi Next, add a sample settings in appsettings.json: "Position": { "Title": "Editor", "Name": "Joe Smith" } Create an options object to map these setting object in a file named PositionOptions....

October 23, 2023 · 3 min · Alex Popescu