SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Downloaden Sie, um offline zu lesen
Azure
Application
Insights
An introduction
Matthias Güntert – November 2021
Agenda
• What is Application Insights?
• What does it monitor?
• Investigation Tools
• Usage Analysis
• Tips & Tricks (optional)
About me
Personal
• Father of two kids
• Digital photographer
• Supermoto rider
• Blogger: www.azureblue.io
Professional
• Azure Cloud Enthusiast & Solution Architect
• Work for Solveva, a company focusing on software
solutions in the insurance sector
What is Application Insights?
• Application Monitoring solution
• Feature of Azure Monitor
• Collects logs & metrics
• Server- & Client side monitoring
• Both Azure & Non-Azure
• Code-based & code-less monitoring
• Code-based via SDK integration
• Code-less via middleware integration
• e.g. Web Apps, Azure Functions…
• Multiple ways to react
What does it monitor?
• Request rates, response times,
failure rates
• Dependency rates, response
times, failure rates
• Exceptions
• Page views, Load performance
• AJAX calls
• User and session counts
• Performance counters
• Host Diagnostics
• Diagnostic Trace Logs
• Custom events & metrics
Architecture for Demo
Application Maps
Triage Distributed Applications
• Visualize complex topologies
• Spot performance bottlenecks &
failure hotspots
• Across all components
• Component = Independently
deployable parts of
distributed/microservices
application
• Finds components by following
HTTP dependency calls made
between servers with App Insights
SDK installed
Smart Detection
Automatic notification of anomalies
• Proactive analysis of app
telemetry
• Automatically detects…
• degradations
• memory leaks
• abnormal rise in exception volume
• abnormal patterns in client or
server performance
• security anti-patterns
• No configuration required
• Get email notifications &
automated alerts
Live Metrics
Monitor & Diagnose with 1-second Latency
• See logs & metrics as they come in
• Displays data within seconds
• Metrics Explorer & Analytics requires
minutes
• Data is not getting stored & only
streamed while pane is open
• Free of charge
• Supports
• ASP.NET (Core), .NET (Core)
• Java
• Node.js
• Doesn’t support JavaScript!
Transaction search & log analytics
Explore Individual Telemetry Items
• Explore & filter telemetry items
• Visualize metrics
• Drill into end-to-end transaction
details
Event Types
Transaction search & log analytics
Event Type Description
Trace • Diagnostic logs
• TrackTrace, log4Net, Nlog, System.Diagnostic.Trace
Request • HTTP requests received by sever application
• Including pages, scripts, images, style files, and data
Page View • Telemetry send by the web client
• Frontend, JavaScript
Custom Event • Calls to TrackEvent()
Exception • Uncaught exceptions in the server
• Calls to TrackException()
• Pay attention to not loose the stacktrace!
Dependency • Calls from server application to other REST APIs, databases, …
• AJAX Calls from client code
Availability • Results of availability tests
Transaction diagnostic experience
Parent Node
Timeline view
Create ADO board
items
Transaction details
Transaction search
results
Switch to telemetry view
Transaction diagnostic experience
Log Analytics
Transaction search & log analytics
• Data gets feeded to
Log Analytics
workspace
• Perform rich queries
with KQL
Availability Tests
Monitor Availability & Responsiveness
• Sends web requests at regular
intervals
• Alerts if app isn’t responding
• Supports for types of tests
• URL Ping Test
• Standard Test
• Multi-Step Test
• Custom TrackAvailability() Test
Four types of tests
Availability Tests
Test Type Description
URL Ping Test (Classic) • Simple GET request from multiple regions
• Allows to check response body and code
• Created via portal
Standard Test (Preview) • Includes TLS certificate validation checks
• Proactive lifetime check of TLS certificate
• Supports more request verbs, GET, HEAD, POST, …
• Allows to check response body
• Created via portal
Multi-Step Web Test (Classic) • Play back a recording of web request sequences
• Created in Visual Studio Enterprise
Custom TrackAvailability() Test • Created in code
Failures
Correlate exceptions with other events
• Reports exceptions on client &
server side
• Correlate requests to exceptions
• See how many users are affected
• Get transactional details
Snapshot Debugger
• Automatically collects debug snapshots
• ThresholdForSnapshotting
• View snapshots in portal
• Show call stack & variables
• Protected by RBAC
• Set snap- & logpoints
• Instructs debugger to take snapshots
• Similar to breakpoints, but they don’t halt
the app when hit!
• Available for
• .NET Framework & ASP.NET (4.5)
• .NET Core & ASP.NET Core 2.1, 3.1
• .NET 5
• Environments
• App Service, Functions, …
Performance
Measure & Profile Requests
• Get statistics about
• Operations
• Dependencies
• Roles
Logarithmic performance distribution
Performance Profiler
• Provides performance traces
• Identify «hot» code path taking
the longest time
• Works with .NET applications
• App Service Basic service tier or
higher
Enable via: App Service > App Insights
User, Session & Event Reports
User Behavior Analytics
• Drive decisions about next development cycle based on usage & stats
• Three different perspectives
• Export to CSV, PowerBI, Excel (via log analytics)
• Split graphs by properties (refUri, browser version, OS, country, …)
Report Answers… Counting Method
User Report How many people used my app & features? Anonymous ID in browser cookie
Session Report How many sessions have included certain pages & features? A period of activity by a user, terminated by a period
of inactivity of half an hour
Event Report How often are certain pages & features used? On page load
Examples
User, Session & Event Reports
Users Report
Session Report
Users Report split by referer URI
Funnels
Monitor step-by-step conversion rate
• Are users processing through
an entire process?
• Track up to 6 custom events
• Create custom events with:
<button
onclick="appInsights.trackEvent({name:'a
dd-item-to-cart'});">Add item to
cart</button>
• Or use Click Analytics Plugin
<button id="add-item-to-cart“>Add item
to cart</button>
User Flows
Visualize & Analyze user navigation patterns
• What steps have led to an
exception?
• What are the places users
churn most from the site?
• What do users click on the
site?
Dependencies Pave Views Exceptions Custom Events Requests
Cohorts
Group your users
• A set of users, sessions, events or
operations having something in
common
• E.g. users who used app a certain
number of days within a time window
• Similar to filters
• Can be used from
• Users
• Sessions
• Events
• User flow
App Insights REST API
Query & integrate with AI data
• Access all app events & metric
data via REST API
• Integrate your data e.g., with
PowerBI, Excel and others
• https://api.applicationinsights.io
• Configure > API Access > Create
API Key
• Application ID != Instrumentation
Key
Displaying Client IP Addresses
Tips & Tricks
• By default, only collected
temporarily for geolocation lookup
• IP calc. for client-side telemetry
occurs at the ingestion endpoint in
Azure
• Populated fields
• client_City = …
• client_StateOrProvince = …
• client_CountryOrRegion = …
• client_IP = 0.0.0.0
• Check your compliance
requirements first!
• Disable IP Masking via
• REST Call
• “DisableIpMasking”: true
• Custom Telemetry Initializer
az rest --method patch 
--url https://management.azure.com/subscriptions/<sub-id>/resourceGroups/<rg-name>/providers/microsoft.insights/components/<resource-name>?api-version=2018-05-01-preview 
--body { "location": "<resource location>", "kind": "web", "properties": { "Application_Type": "web", "DisableIpMasking": true } }
Live Metrics - Securing control channel
Tips & Tricks
• Custom filters are sent back to
your app/SDK
• May contain confidential data
• Configure > API Access >
Create API key
ASP.NET Core: Startup.cs
Log request & response body
Tips & Tricks
• Write custom middleware OR
• Use my nuget package
• dotnet add package
Azureblue.ApplicationInsights.RequestLogging
• Read more
• https://www.azureblue.io/how-to-log-http-request-body-with-asp-net-core-
application-insights/
• https://github.com/matthiasguentert/ApplicationInsightsRequestLogging
Client-Side monitoring (JavaScript)
Tips & Tricks
• Options for setup (don’t mix them)
• Via NPM
• npm i --save @microsoft/applicationinsights-web
• Via code snippet
• Via nuget package (Microsoft.ApplicationInsights.AspNetCore)
• Property: public string FullScript { get; }
• Convenient, but won’t allow configuring the client-side part
• Snippet:
• Should be the first script after <head>
Set Cloud Role Name
Tips & Tricks
.NET Core
Java
JavaScript
Data Model
• Automatically collected
• Request
• Dependency
• Exception
• Additional types
• Trace
• Metric
• Event

Weitere ähnliche Inhalte

Was ist angesagt?

A Walk in the Cloud with AWS Lambda
A Walk in the Cloud with AWS LambdaA Walk in the Cloud with AWS Lambda
A Walk in the Cloud with AWS LambdaAmazon Web Services
 
Getting Started with Amazon Kinesis
Getting Started with Amazon KinesisGetting Started with Amazon Kinesis
Getting Started with Amazon KinesisAmazon Web Services
 
AWS January 2016 Webinar Series - Introduction to Docker on AWS
AWS January 2016 Webinar Series - Introduction to Docker on AWSAWS January 2016 Webinar Series - Introduction to Docker on AWS
AWS January 2016 Webinar Series - Introduction to Docker on AWSAmazon Web Services
 
Introduction to Azure Functions
Introduction to Azure FunctionsIntroduction to Azure Functions
Introduction to Azure FunctionsCallon Campbell
 
Introduction to AWS Lambda and Serverless Applications
Introduction to AWS Lambda and Serverless ApplicationsIntroduction to AWS Lambda and Serverless Applications
Introduction to AWS Lambda and Serverless ApplicationsAmazon Web Services
 
Azure API Management
Azure API ManagementAzure API Management
Azure API ManagementDaniel Toomey
 
Containers Docker Kind Kubernetes Istio
Containers Docker Kind Kubernetes IstioContainers Docker Kind Kubernetes Istio
Containers Docker Kind Kubernetes IstioAraf Karsh Hamid
 
Azure Functions & Serverless Computing
Azure Functions & Serverless ComputingAzure Functions & Serverless Computing
Azure Functions & Serverless ComputingAbhimanyu Singhal
 
Microservice With Spring Boot and Spring Cloud
Microservice With Spring Boot and Spring CloudMicroservice With Spring Boot and Spring Cloud
Microservice With Spring Boot and Spring CloudEberhard Wolff
 
Breaking Observability Chaos: Best Practices to Monitor AWS Cloud Native Apps...
Breaking Observability Chaos: Best Practices to Monitor AWS Cloud Native Apps...Breaking Observability Chaos: Best Practices to Monitor AWS Cloud Native Apps...
Breaking Observability Chaos: Best Practices to Monitor AWS Cloud Native Apps...Amazon Web Services
 
Azure Monitoring Overview
Azure Monitoring OverviewAzure Monitoring Overview
Azure Monitoring Overviewgjuljo
 
MeetUp Monitoring with Prometheus and Grafana (September 2018)
MeetUp Monitoring with Prometheus and Grafana (September 2018)MeetUp Monitoring with Prometheus and Grafana (September 2018)
MeetUp Monitoring with Prometheus and Grafana (September 2018)Lucas Jellema
 
Datadogoverview.pptx
Datadogoverview.pptxDatadogoverview.pptx
Datadogoverview.pptxssuser8bc443
 
Authoring and Deploying Serverless Applications with AWS SAM
Authoring and Deploying Serverless Applications with AWS SAMAuthoring and Deploying Serverless Applications with AWS SAM
Authoring and Deploying Serverless Applications with AWS SAMAmazon Web Services
 
Introduction to Batch Processing on AWS
Introduction to Batch Processing on AWSIntroduction to Batch Processing on AWS
Introduction to Batch Processing on AWSAmazon Web Services
 
Microservices
MicroservicesMicroservices
MicroservicesSmartBear
 
Monitoring real-life Azure applications: When to use what and why
Monitoring real-life Azure applications: When to use what and whyMonitoring real-life Azure applications: When to use what and why
Monitoring real-life Azure applications: When to use what and whyKarl Ots
 
What is an API Gateway?
What is an API Gateway?What is an API Gateway?
What is an API Gateway?LunchBadger
 

Was ist angesagt? (20)

A Walk in the Cloud with AWS Lambda
A Walk in the Cloud with AWS LambdaA Walk in the Cloud with AWS Lambda
A Walk in the Cloud with AWS Lambda
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
 
Microsoft Azure Logic apps
Microsoft Azure Logic appsMicrosoft Azure Logic apps
Microsoft Azure Logic apps
 
Getting Started with Amazon Kinesis
Getting Started with Amazon KinesisGetting Started with Amazon Kinesis
Getting Started with Amazon Kinesis
 
AWS January 2016 Webinar Series - Introduction to Docker on AWS
AWS January 2016 Webinar Series - Introduction to Docker on AWSAWS January 2016 Webinar Series - Introduction to Docker on AWS
AWS January 2016 Webinar Series - Introduction to Docker on AWS
 
Introduction to Azure Functions
Introduction to Azure FunctionsIntroduction to Azure Functions
Introduction to Azure Functions
 
Introduction to AWS Lambda and Serverless Applications
Introduction to AWS Lambda and Serverless ApplicationsIntroduction to AWS Lambda and Serverless Applications
Introduction to AWS Lambda and Serverless Applications
 
Azure API Management
Azure API ManagementAzure API Management
Azure API Management
 
Containers Docker Kind Kubernetes Istio
Containers Docker Kind Kubernetes IstioContainers Docker Kind Kubernetes Istio
Containers Docker Kind Kubernetes Istio
 
Azure Functions & Serverless Computing
Azure Functions & Serverless ComputingAzure Functions & Serverless Computing
Azure Functions & Serverless Computing
 
Microservice With Spring Boot and Spring Cloud
Microservice With Spring Boot and Spring CloudMicroservice With Spring Boot and Spring Cloud
Microservice With Spring Boot and Spring Cloud
 
Breaking Observability Chaos: Best Practices to Monitor AWS Cloud Native Apps...
Breaking Observability Chaos: Best Practices to Monitor AWS Cloud Native Apps...Breaking Observability Chaos: Best Practices to Monitor AWS Cloud Native Apps...
Breaking Observability Chaos: Best Practices to Monitor AWS Cloud Native Apps...
 
Azure Monitoring Overview
Azure Monitoring OverviewAzure Monitoring Overview
Azure Monitoring Overview
 
MeetUp Monitoring with Prometheus and Grafana (September 2018)
MeetUp Monitoring with Prometheus and Grafana (September 2018)MeetUp Monitoring with Prometheus and Grafana (September 2018)
MeetUp Monitoring with Prometheus and Grafana (September 2018)
 
Datadogoverview.pptx
Datadogoverview.pptxDatadogoverview.pptx
Datadogoverview.pptx
 
Authoring and Deploying Serverless Applications with AWS SAM
Authoring and Deploying Serverless Applications with AWS SAMAuthoring and Deploying Serverless Applications with AWS SAM
Authoring and Deploying Serverless Applications with AWS SAM
 
Introduction to Batch Processing on AWS
Introduction to Batch Processing on AWSIntroduction to Batch Processing on AWS
Introduction to Batch Processing on AWS
 
Microservices
MicroservicesMicroservices
Microservices
 
Monitoring real-life Azure applications: When to use what and why
Monitoring real-life Azure applications: When to use what and whyMonitoring real-life Azure applications: When to use what and why
Monitoring real-life Azure applications: When to use what and why
 
What is an API Gateway?
What is an API Gateway?What is an API Gateway?
What is an API Gateway?
 

Ähnlich wie Azure Application insights - An Introduction

Applications Performance Monitoring with Applications Manager part 1
Applications Performance Monitoring with Applications Manager part 1Applications Performance Monitoring with Applications Manager part 1
Applications Performance Monitoring with Applications Manager part 1ManageEngine, Zoho Corporation
 
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...Igor Abade
 
Real User Experience Insight External
Real User Experience Insight ExternalReal User Experience Insight External
Real User Experience Insight Externaloracleonthebrain
 
Service quality monitoring system architecture
Service quality monitoring system architectureService quality monitoring system architecture
Service quality monitoring system architectureMatsuo Sawahashi
 
Monitoring advanced Azure PaaS workloads in the enterprise - Level: 200
Monitoring advanced Azure PaaS workloads in the enterprise - Level: 200Monitoring advanced Azure PaaS workloads in the enterprise - Level: 200
Monitoring advanced Azure PaaS workloads in the enterprise - Level: 200Karl Ots
 
SharePoint 2013 APIs demystified
SharePoint 2013 APIs demystifiedSharePoint 2013 APIs demystified
SharePoint 2013 APIs demystifiedSPC Adriatics
 
CQRS and Event Sourcing for IoT applications
CQRS and Event Sourcing for IoT applicationsCQRS and Event Sourcing for IoT applications
CQRS and Event Sourcing for IoT applicationsMichael Blackstock
 
Salesforce Winter 23 Release Webinar Slide Deck
Salesforce Winter 23 Release Webinar Slide DeckSalesforce Winter 23 Release Webinar Slide Deck
Salesforce Winter 23 Release Webinar Slide Deckbrightgenss
 
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...ATAGTR2017 Unified APM: The new age performance monitoring for production sys...
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...Agile Testing Alliance
 
Serverless in the Azure World
Serverless in the Azure WorldServerless in the Azure World
Serverless in the Azure WorldKasun Kodagoda
 
Tokyo Azure Meetup #14 - Azure Functions Proxies
Tokyo Azure Meetup #14  -  Azure Functions ProxiesTokyo Azure Meetup #14  -  Azure Functions Proxies
Tokyo Azure Meetup #14 - Azure Functions ProxiesTokyo Azure Meetup
 
Different monitoring options for cloud native integration solutions
Different monitoring options for cloud native integration solutionsDifferent monitoring options for cloud native integration solutions
Different monitoring options for cloud native integration solutionsBizTalk360
 
Tokyo azure meetup #8 azure update, august
Tokyo azure meetup #8   azure update, augustTokyo azure meetup #8   azure update, august
Tokyo azure meetup #8 azure update, augustTokyo Azure Meetup
 
Tokyo azure meetup #8 - Azure Update, August
Tokyo azure meetup #8 - Azure Update, AugustTokyo azure meetup #8 - Azure Update, August
Tokyo azure meetup #8 - Azure Update, AugustKanio Dimitrov
 
How to build a serverless helmet detection system
How to build a serverless helmet detection systemHow to build a serverless helmet detection system
How to build a serverless helmet detection systemMandar Dharmadhikari
 
Building API in the cloud using Azure Functions
Building API in the cloud using Azure FunctionsBuilding API in the cloud using Azure Functions
Building API in the cloud using Azure FunctionsAleksandar Bozinovski
 

Ähnlich wie Azure Application insights - An Introduction (20)

Closing the door on application performance problems
Closing the door on application performance problemsClosing the door on application performance problems
Closing the door on application performance problems
 
Applications Performance Monitoring with Applications Manager part 1
Applications Performance Monitoring with Applications Manager part 1Applications Performance Monitoring with Applications Manager part 1
Applications Performance Monitoring with Applications Manager part 1
 
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
 
Real User Experience Insight External
Real User Experience Insight ExternalReal User Experience Insight External
Real User Experience Insight External
 
Service quality monitoring system architecture
Service quality monitoring system architectureService quality monitoring system architecture
Service quality monitoring system architecture
 
Azure functions serverless
Azure functions serverlessAzure functions serverless
Azure functions serverless
 
Monitoring advanced Azure PaaS workloads in the enterprise - Level: 200
Monitoring advanced Azure PaaS workloads in the enterprise - Level: 200Monitoring advanced Azure PaaS workloads in the enterprise - Level: 200
Monitoring advanced Azure PaaS workloads in the enterprise - Level: 200
 
SharePoint 2013 APIs demystified
SharePoint 2013 APIs demystifiedSharePoint 2013 APIs demystified
SharePoint 2013 APIs demystified
 
CQRS and Event Sourcing for IoT applications
CQRS and Event Sourcing for IoT applicationsCQRS and Event Sourcing for IoT applications
CQRS and Event Sourcing for IoT applications
 
Salesforce Winter 23 Release Webinar Slide Deck
Salesforce Winter 23 Release Webinar Slide DeckSalesforce Winter 23 Release Webinar Slide Deck
Salesforce Winter 23 Release Webinar Slide Deck
 
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...ATAGTR2017 Unified APM: The new age performance monitoring for production sys...
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...
 
Serverless in the Azure World
Serverless in the Azure WorldServerless in the Azure World
Serverless in the Azure World
 
Tokyo Azure Meetup #14 - Azure Functions Proxies
Tokyo Azure Meetup #14  -  Azure Functions ProxiesTokyo Azure Meetup #14  -  Azure Functions Proxies
Tokyo Azure Meetup #14 - Azure Functions Proxies
 
Cloud monitoring with Applications Manager
Cloud monitoring with Applications ManagerCloud monitoring with Applications Manager
Cloud monitoring with Applications Manager
 
ASP.NET MVC - Latest & Greatest So Far
ASP.NET MVC - Latest & Greatest So FarASP.NET MVC - Latest & Greatest So Far
ASP.NET MVC - Latest & Greatest So Far
 
Different monitoring options for cloud native integration solutions
Different monitoring options for cloud native integration solutionsDifferent monitoring options for cloud native integration solutions
Different monitoring options for cloud native integration solutions
 
Tokyo azure meetup #8 azure update, august
Tokyo azure meetup #8   azure update, augustTokyo azure meetup #8   azure update, august
Tokyo azure meetup #8 azure update, august
 
Tokyo azure meetup #8 - Azure Update, August
Tokyo azure meetup #8 - Azure Update, AugustTokyo azure meetup #8 - Azure Update, August
Tokyo azure meetup #8 - Azure Update, August
 
How to build a serverless helmet detection system
How to build a serverless helmet detection systemHow to build a serverless helmet detection system
How to build a serverless helmet detection system
 
Building API in the cloud using Azure Functions
Building API in the cloud using Azure FunctionsBuilding API in the cloud using Azure Functions
Building API in the cloud using Azure Functions
 

Kürzlich hochgeladen

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 

Kürzlich hochgeladen (20)

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

Azure Application insights - An Introduction

  • 2. Agenda • What is Application Insights? • What does it monitor? • Investigation Tools • Usage Analysis • Tips & Tricks (optional)
  • 3. About me Personal • Father of two kids • Digital photographer • Supermoto rider • Blogger: www.azureblue.io Professional • Azure Cloud Enthusiast & Solution Architect • Work for Solveva, a company focusing on software solutions in the insurance sector
  • 4. What is Application Insights? • Application Monitoring solution • Feature of Azure Monitor • Collects logs & metrics • Server- & Client side monitoring • Both Azure & Non-Azure • Code-based & code-less monitoring • Code-based via SDK integration • Code-less via middleware integration • e.g. Web Apps, Azure Functions… • Multiple ways to react
  • 5. What does it monitor? • Request rates, response times, failure rates • Dependency rates, response times, failure rates • Exceptions • Page views, Load performance • AJAX calls • User and session counts • Performance counters • Host Diagnostics • Diagnostic Trace Logs • Custom events & metrics
  • 7. Application Maps Triage Distributed Applications • Visualize complex topologies • Spot performance bottlenecks & failure hotspots • Across all components • Component = Independently deployable parts of distributed/microservices application • Finds components by following HTTP dependency calls made between servers with App Insights SDK installed
  • 8. Smart Detection Automatic notification of anomalies • Proactive analysis of app telemetry • Automatically detects… • degradations • memory leaks • abnormal rise in exception volume • abnormal patterns in client or server performance • security anti-patterns • No configuration required • Get email notifications & automated alerts
  • 9. Live Metrics Monitor & Diagnose with 1-second Latency • See logs & metrics as they come in • Displays data within seconds • Metrics Explorer & Analytics requires minutes • Data is not getting stored & only streamed while pane is open • Free of charge • Supports • ASP.NET (Core), .NET (Core) • Java • Node.js • Doesn’t support JavaScript!
  • 10. Transaction search & log analytics Explore Individual Telemetry Items • Explore & filter telemetry items • Visualize metrics • Drill into end-to-end transaction details
  • 11. Event Types Transaction search & log analytics Event Type Description Trace • Diagnostic logs • TrackTrace, log4Net, Nlog, System.Diagnostic.Trace Request • HTTP requests received by sever application • Including pages, scripts, images, style files, and data Page View • Telemetry send by the web client • Frontend, JavaScript Custom Event • Calls to TrackEvent() Exception • Uncaught exceptions in the server • Calls to TrackException() • Pay attention to not loose the stacktrace! Dependency • Calls from server application to other REST APIs, databases, … • AJAX Calls from client code Availability • Results of availability tests
  • 12. Transaction diagnostic experience Parent Node Timeline view Create ADO board items Transaction details Transaction search results Switch to telemetry view
  • 14. Log Analytics Transaction search & log analytics • Data gets feeded to Log Analytics workspace • Perform rich queries with KQL
  • 15. Availability Tests Monitor Availability & Responsiveness • Sends web requests at regular intervals • Alerts if app isn’t responding • Supports for types of tests • URL Ping Test • Standard Test • Multi-Step Test • Custom TrackAvailability() Test
  • 16. Four types of tests Availability Tests Test Type Description URL Ping Test (Classic) • Simple GET request from multiple regions • Allows to check response body and code • Created via portal Standard Test (Preview) • Includes TLS certificate validation checks • Proactive lifetime check of TLS certificate • Supports more request verbs, GET, HEAD, POST, … • Allows to check response body • Created via portal Multi-Step Web Test (Classic) • Play back a recording of web request sequences • Created in Visual Studio Enterprise Custom TrackAvailability() Test • Created in code
  • 17. Failures Correlate exceptions with other events • Reports exceptions on client & server side • Correlate requests to exceptions • See how many users are affected • Get transactional details
  • 18. Snapshot Debugger • Automatically collects debug snapshots • ThresholdForSnapshotting • View snapshots in portal • Show call stack & variables • Protected by RBAC • Set snap- & logpoints • Instructs debugger to take snapshots • Similar to breakpoints, but they don’t halt the app when hit! • Available for • .NET Framework & ASP.NET (4.5) • .NET Core & ASP.NET Core 2.1, 3.1 • .NET 5 • Environments • App Service, Functions, …
  • 19. Performance Measure & Profile Requests • Get statistics about • Operations • Dependencies • Roles Logarithmic performance distribution
  • 20. Performance Profiler • Provides performance traces • Identify «hot» code path taking the longest time • Works with .NET applications • App Service Basic service tier or higher Enable via: App Service > App Insights
  • 21. User, Session & Event Reports User Behavior Analytics • Drive decisions about next development cycle based on usage & stats • Three different perspectives • Export to CSV, PowerBI, Excel (via log analytics) • Split graphs by properties (refUri, browser version, OS, country, …) Report Answers… Counting Method User Report How many people used my app & features? Anonymous ID in browser cookie Session Report How many sessions have included certain pages & features? A period of activity by a user, terminated by a period of inactivity of half an hour Event Report How often are certain pages & features used? On page load
  • 22. Examples User, Session & Event Reports Users Report Session Report Users Report split by referer URI
  • 23. Funnels Monitor step-by-step conversion rate • Are users processing through an entire process? • Track up to 6 custom events • Create custom events with: <button onclick="appInsights.trackEvent({name:'a dd-item-to-cart'});">Add item to cart</button> • Or use Click Analytics Plugin <button id="add-item-to-cart“>Add item to cart</button>
  • 24. User Flows Visualize & Analyze user navigation patterns • What steps have led to an exception? • What are the places users churn most from the site? • What do users click on the site? Dependencies Pave Views Exceptions Custom Events Requests
  • 25. Cohorts Group your users • A set of users, sessions, events or operations having something in common • E.g. users who used app a certain number of days within a time window • Similar to filters • Can be used from • Users • Sessions • Events • User flow
  • 26. App Insights REST API Query & integrate with AI data • Access all app events & metric data via REST API • Integrate your data e.g., with PowerBI, Excel and others • https://api.applicationinsights.io • Configure > API Access > Create API Key • Application ID != Instrumentation Key
  • 27. Displaying Client IP Addresses Tips & Tricks • By default, only collected temporarily for geolocation lookup • IP calc. for client-side telemetry occurs at the ingestion endpoint in Azure • Populated fields • client_City = … • client_StateOrProvince = … • client_CountryOrRegion = … • client_IP = 0.0.0.0 • Check your compliance requirements first! • Disable IP Masking via • REST Call • “DisableIpMasking”: true • Custom Telemetry Initializer az rest --method patch --url https://management.azure.com/subscriptions/<sub-id>/resourceGroups/<rg-name>/providers/microsoft.insights/components/<resource-name>?api-version=2018-05-01-preview --body { "location": "<resource location>", "kind": "web", "properties": { "Application_Type": "web", "DisableIpMasking": true } }
  • 28. Live Metrics - Securing control channel Tips & Tricks • Custom filters are sent back to your app/SDK • May contain confidential data • Configure > API Access > Create API key ASP.NET Core: Startup.cs
  • 29. Log request & response body Tips & Tricks • Write custom middleware OR • Use my nuget package • dotnet add package Azureblue.ApplicationInsights.RequestLogging • Read more • https://www.azureblue.io/how-to-log-http-request-body-with-asp-net-core- application-insights/ • https://github.com/matthiasguentert/ApplicationInsightsRequestLogging
  • 30. Client-Side monitoring (JavaScript) Tips & Tricks • Options for setup (don’t mix them) • Via NPM • npm i --save @microsoft/applicationinsights-web • Via code snippet • Via nuget package (Microsoft.ApplicationInsights.AspNetCore) • Property: public string FullScript { get; } • Convenient, but won’t allow configuring the client-side part • Snippet: • Should be the first script after <head>
  • 31. Set Cloud Role Name Tips & Tricks .NET Core Java JavaScript
  • 32. Data Model • Automatically collected • Request • Dependency • Exception • Additional types • Trace • Metric • Event