Events
Mar 17, 11 PM - Mar 21, 11 PM
Join the meetup series to build scalable AI solutions based on real-world use cases with fellow developers and experts.
Register nowThis browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
Note
The Basic, Standard, and Enterprise plans will be deprecated starting from mid-March, 2025, with a 3 year retirement period. We recommend transitioning to Azure Container Apps. For more information, see the Azure Spring Apps retirement announcement.
The Standard consumption and dedicated plan will be deprecated starting September 30, 2024, with a complete shutdown after six months. We recommend transitioning to Azure Container Apps. For more information, see Migrate Azure Spring Apps Standard consumption and dedicated plan to Azure Container Apps.
This article applies to: ✅ Basic/Standard ✅ Enterprise
This article answers frequently asked questions about Azure Spring Apps.
Azure Spring Apps provides a platform as a service (PaaS) for Spring developers. Azure Spring Apps manages your application infrastructure so that you can focus on application code and business logic. Core features built into Azure Spring Apps include Eureka, Config Server, Service Registry Server, VMware Tanzu Build Service, Blue-green deployment, and more. This service also enables developers to bind their applications with other Azure services, such as Azure Cosmos DB, Azure Database for MySQL, and Azure Cache for Redis.
Azure Spring Apps enhances the application diagnostics experience for developers and operators by integrating Azure Monitor, Application Insights, and Log Analytics.
Security and privacy are among the top priorities for Azure and Azure Spring Apps customers. Azure helps ensure that only customers have access to application data, logs, or configurations by securely encrypting all of this data.
Each service instance in Azure Spring Apps is backed by Azure Kubernetes Service with multiple worker nodes. Azure Spring Apps manages the underlying Kubernetes cluster for you, including high availability, scalability, Kubernetes version upgrade, and so on.
Azure Spring Apps intelligently schedules your applications on the underlying Kubernetes worker nodes. To provide high availability, Azure Spring Apps distributes applications with two or more instances on different nodes.
See Products available by region.
While the Azure Spring Apps Basic/Standard plan is available in regions of China, the Enterprise plan is not available in all regions on Azure China.
Azure Spring Apps is a regional service. All customer data in Azure Spring Apps is stored to a single, specified region. To learn more about geo and region, see Data residency in Azure.
Azure Spring Apps has the following known limitations:
spring.application.name
is overridden by the application name that's used to create each application.server.port
defaults to port 1025
in the Basic/Standard plan and to port 8080
in the Enterprise plan. If you apply any other value, the default value overrides the one that you specify, so avoid specifying a server port in your code. If your code sets the server port explicitly rather than using server.port
, ensure that the port is either 1025
or 8080
depending on the pricing plan of your Azure Spring Apps service instance.Which one should I use and what are the limits within each plan?
We're not actively developing more capabilities for Service Binding. Instead, there's a new Azure-wise solution named Service Connector. On the one hand, the new solution brings you consistent integration experience across App hosting services on Azure like App Service. On the other hand, it covers your needs better by starting with supporting 10+ most used target Azure services including MySQL, SQL DB, Azure Cosmos DB, Postgres DB, Redis, Storage and more. Service Connector is currently in Public Preview, we invite you to try out the new experience.
If you encounter any issues with Azure Spring Apps, create an Azure Support Request. To submit a feature request or provide feedback, go to Azure Feedback.
The Enterprise plan has built-in VMware Spring Runtime Support, so you can open support tickets to VMware if you think your issue is in the scope of VMware Spring Runtime Support. To better understand VMware Spring Runtime Support itself, see the VMware Spring Runtime. To understand the details about how to register and use this support service, see the Support section in the Enterprise plan FAQ from VMware. For any other issues, open support tickets with Microsoft.
Important
After you create an Enterprise plan instance, your entitlement is ready within ten business days. If you encounter any exceptions, raise a support ticket with Microsoft to get help with it.
For the quickest way to get started with Azure Spring Apps, follow the instructions in Quickstart: Launch an application in Azure Spring Apps by using the Azure portal.
Find metrics in the App Overview tab and the Azure Monitor tab.
Azure Spring Apps supports exporting Spring application logs and metrics to Azure Storage, Event Hubs, and Log Analytics. The table name in Log Analytics is AppPlatformLogsforSpring
. To learn how to enable it, see Diagnostic services.
Yes. For more information, see Use Application Insights Java In-Process Agent in Azure Spring Apps.
Three services are currently supported:
Yes.
The number of outbound public IP addresses varies according to the plans and other factors.
Azure Spring Apps instance type | Default number of outbound public IP addresses |
---|---|
Basic plan instances | 1 |
Standard/Enterprise plan instances | 2 |
VNet injection instances | 1 |
Yes, you can open a support ticket to request for more outbound public IP addresses.
It depends on the logic of resource providers that own the extension resources. The extension resources of a Microsoft.AppPlatform
instance don't belong to the same namespace, so the behavior varies by resource provider. For example, the delete/move operation won't cascade to the diagnostics settings resources. If a new Azure Spring Apps instance is provisioned with the same resource ID as the deleted one, or if the previous Azure Spring Apps instance is moved back, the previous diagnostics settings resources continue extending it.
You can delete the Azure Spring Apps diagnostic settings by using Azure CLI:
az monitor diagnostic-settings delete --name $DIAGNOSTIC_SETTINGS_NAME --resource $AZURE_SPRING_APPS_RESOURCE_ID
Azure Spring Apps supports Java LTS versions with the most recent builds, currently Java 8, Java 11, Java 17, and Java 21 are supported.
See Java long-term support for Azure and Azure Stack.
Public notice is sent out at 12 months before any old runtime version is retired. You have 12 months to migrate to a later version.
See Java long-term support for Azure and Azure Stack.
The most recent Ubuntu LTS version is used, currently Ubuntu 20.04 LTS (Focal Fossa) is the default OS.
Security patches applicable to Azure Spring Apps are rolled out to production on a monthly basis. Critical security patches (CVE score >= 9) applicable to Azure Spring Apps are rolled out as soon as possible.
Yes. For more information, see Set up a staging environment.
No. Azure Spring Apps abstracts the developer from the underlying architecture, allowing you to concentrate on application code and business logic.
Yes. For more information, see Quickstart: Deploy your first application to Azure Spring Apps.
Yes. For more information, see Set up autoscale for applications.
Azure Spring Apps continuously probes port 1025
for customer's applications with the Basic/Standard pricing plan, or port 8080
with the Enterprise plan. These probes determine whether the application container is ready to start accepting traffic and whether Azure Spring Apps needs to restart the application container. Internally, Azure Spring Apps uses Kubernetes liveness and readiness probes to achieve the status monitoring.
Note
Because of these probes, you currently can't launch applications in Azure Spring Apps without exposing port 1025
or 8080
.
Yes. For more information, see Monitor app lifecycle events using Azure Activity log and Azure Service Health.
.NET Core 3.1 and later versions.
Until December 3, 2022. See .NET Core Support Policy.
In some rare scenarios, you can see errors from your application logs similar to the following example:
RetryableEurekaHttpClient: Request execution failure with status code 401; retrying on another server if available
The Spring framework raises this issue at a low rate due to network instability or other network issues. There should be no impacts to the user experience. The Eureka client has both heartbeat and retry policy to take care of this problem. You can consider it a transient error and skip it safely.
If you have further questions, see the Azure Spring Apps troubleshooting guide.
Events
Mar 17, 11 PM - Mar 21, 11 PM
Join the meetup series to build scalable AI solutions based on real-world use cases with fellow developers and experts.
Register nowTraining
Module
Deploy a Spring Boot app to Azure Container Apps - Training
In this module, you learn how to deploy a Spring Boot app to Azure Container Apps. You deploy a Spring Boot application to Azure Container Apps and maintain it using the built-in Java stack.
Certification
Microsoft Certified: Azure for SAP Workloads Specialty - Certifications
Demonstrate planning, migration, and operation of an SAP solution on Microsoft Azure while you leverage Azure resources.