This entry is written on June 10, 2021.
Originally published at in Japanese on June 10, 2021.

Recently I wrote the following entry.

When I answered to the person, he/she asked me again about the related question.

Could you please share how to derive the following metrics with me?

Memory usage ratio (% Used Memory)
Disk usage ratio (% Used Space)
Free size of disks (Free Megabytes)
CPU usage ratio (% Processor Time)

How to collect metrics

Azure Monitor agent and Log Analytics agent use PAL (Platform Abstraction Layer) to collect and calculate metrics and send to Azure Monitor. …

This entry is written on June 1, 2021.
Originally published at in Japanese on June 1, 2021.

Someone asked me about the following question.

We monitor memory consumption trend of each Linux node using “Used Memory MBytes” performance counter, which is available in Azure Monitor (Log Analytics). This data is not equal to “used” data got via free command. Could you please tell me the reason?

Regarding “Performance Counter” of Log Analytics, please read the following document.

You can query several metrics with kusto in Azure portal.

On the other hand, all of you might know the command of…

[As of March, 31, 2021]

The original entry is here (English) and there (Japanese).


Ingress controller of Azure Kubernetes Service (AKS) can allow ingress traffic from specified public IP addresses, but how about egress traffic? Without any configuration, source public IP addresses of egress traffic from AKS are chosen at random. This behavior is not good for some API providers, because they would like to allow only incoming traffic from specified public IP addresses. In this entry, I summarized three ways to restrict IP addresses used for egress traffic from AKS.

1. Azure Firewall

Control egress traffic for cluster nodes in Azure Kubernetes…

[As of December 18, 2020]

The original post is here. Japanese edition is here.

Some customer asked me about the following topic.

“We use App Service for hosting applications and Azure Front Door as global L7 load balancer. We would like to permit access only from Azure Front Door to Azure App Service as simply as possible. Could you please share good solution with us?”

By default, each App Service has a public IP address and is accessible via FQDN from across the globe. If you simply deploy App Service(s) behind Azure Front Door, everyone can access App Service directly…

[Initially created on October 31, 2020. Revised on December 3, 2020]

Japanese edition is listed below.

Azure Event Grid supports CloudEvents 1.0.

And Azure Event Grid client library also supports sending/receiving events in the form of CloudEvents.

If Azure Event Grid is the only system which consumes and posts cloud events in your environment, Azure Event Grid SDK should be chosen. However, if several systems which consume and post cloud events have already existed in your environment and you plan to introduce Azure Event Grid, you would feel happy industry standard APIs allow you to interact…

[As of June 29, 2020]

Japanese edition is here.

Similar to the following article, I will describe how to deploy Helidon applications to Azure App Service.

Deploying Helidon Applications to Google App Engine

What is Helidon?

Helidon is an open-sourced web application development framework developed by Oracle. This is similar to Quarkus and Micronaut.

Project Helidon

The latest version is 1.4.4 and 2.0.0.

In this article, I use the quickstart application of Helidon 2.0.0 SE/MP for demonstration. For more details on the quickstart application of each edition, please check the following URLs.

Helidon SE Quickstart
Helidon MP Quickstart

[As of May 27, 2020]

Here is the Japanese edition.

Recently I was asked the following question.

I would like to modify the naming convention used in Windows Virtual Desktop (WVD) ARM templated published in GitHub. For example, the digit in a sequential number is fixed to 5, and the sequential number starts at not 0 (ZERO) but 1000.

WVD ARM templates published in GitHub are found in the following URL. In this entry, I will handle the template in “Create and provision WVD host pool”.

ARM Templates for Remote Desktop Services deployments

When clicking “Deploy to Azure”…

[As of May 20, 2020]

Japanese edition is here.

Recently I wrote an entry about how to use Azure DevOps to create Azure API Management resource instances (sorry, this entry is written in Japanese).

Now I would like to create an Azure API Management resource instance using GitHub Actions. I used the same ARM template and template parameter file as in the previous entry.

The original ARM template and parameter file exist in Azure Quickstart Templates repository.

Azure Quickstart Templates
Azure API Management instance having an MSI Identity with api-version 2017–03–01

1) Which actions used?

In this case, I…

[As of January 31, 2021]

Japanese edition is here.

Recently I wrote the following blog entry.

In the previous entry, Application Insights agent was used to monitor standalone Java applications and Java EE application server. In this entry, I describe how to monitor gRPC Java applications with Application Monitor Application Insights.

Related articles and documents are listed below.

In this case, I used “route guide” sample application provided in gRPC-Java repository.

Before agent 3.0.0 Preview 3, dependency related exception occurred when starting applications. This exception was due to not JDK version but lack of OpenTelemetry related class files, because…

Akihiro Nishikawa

Cloud Solution Architect @Microsoft, focusing on Application Development. ❤️Java (JVM/GraalVM) and open source technologies. All views are my own. Ex-🥑.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store