You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/app-service/configure-language-java-apm.md
+16-5Lines changed: 16 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -120,8 +120,19 @@ To enable via the Azure CLI, you need to create an Application Insights resource
120
120
121
121
---
122
122
123
+
::: zone pivot="java-javase,java-jboss"
124
+
125
+
> [!NOTE]
126
+
> If you already have an environment variable for `JAVA_OPTS`, append the `-javaagent:/...` option to the end of the current value.
127
+
128
+
::: zone-end
129
+
130
+
::: zone pivot="java-tomcat"
131
+
123
132
> [!NOTE]
124
-
> If you already have an environment variable for `JAVA_OPTS` or `CATALINA_OPTS`, append the `-javaagent:/...` option to the end of the current value.
133
+
> If you already have an environment variable for `CATALINA_OPTS`, append the `-javaagent:/...` option to the end of the current value.
134
+
135
+
::: zone-end
125
136
126
137
## Configure AppDynamics
127
138
@@ -176,20 +187,20 @@ To enable via the Azure CLI, you need to create an Application Insights resource
176
187
## Configure Datadog
177
188
178
189
# [Linux](#tab/linux)
179
-
* The configuration options are different depending on which Datadog site your organization is using. See the official [Datadog Integration for Azure Documentation](https://docs.datadoghq.com/integrations/azure/)
190
+
The configuration options are different depending on which Datadog site your organization is using. See the official [Datadog Integration for Azure Documentation](https://docs.datadoghq.com/integrations/azure/)
180
191
181
192
# [Windows](#tab/windows)
182
-
* The configuration options are different depending on which Datadog site your organization is using. See the official [Datadog Integration for Azure Documentation](https://docs.datadoghq.com/integrations/azure/)
193
+
The configuration options are different depending on which Datadog site your organization is using. See the official [Datadog Integration for Azure Documentation](https://docs.datadoghq.com/integrations/azure/)
183
194
184
195
---
185
196
186
197
## Configure Dynatrace
187
198
188
199
# [Linux](#tab/linux)
189
-
* Dynatrace provides an [Azure Native Dynatrace Service](https://www.dynatrace.com/monitoring/technologies/azure-monitoring/). To monitor Azure App Services using Dynatrace, see the official [Dynatrace for Azure documentation](https://docs.datadoghq.com/integrations/azure/)
200
+
Dynatrace provides an [Azure Native Dynatrace Service](https://www.dynatrace.com/monitoring/technologies/azure-monitoring/). To monitor Azure App Services using Dynatrace, see the official [Dynatrace for Azure documentation](https://docs.datadoghq.com/integrations/azure/)
190
201
191
202
# [Windows](#tab/windows)
192
-
* Dynatrace provides an [Azure Native Dynatrace Service](https://www.dynatrace.com/monitoring/technologies/azure-monitoring/). To monitor Azure App Services using Dynatrace, see the official [Dynatrace for Azure documentation](https://docs.datadoghq.com/integrations/azure/)
203
+
Dynatrace provides an [Azure Native Dynatrace Service](https://www.dynatrace.com/monitoring/technologies/azure-monitoring/). To monitor Azure App Services using Dynatrace, see the official [Dynatrace for Azure documentation](https://docs.datadoghq.com/integrations/azure/)
Copy file name to clipboardExpand all lines: articles/app-service/configure-language-java-data-sources.md
+5-1Lines changed: 5 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -386,7 +386,7 @@ There are three core steps when [registering a data source with JBoss EAP](https
386
386
1. Add the JDBC driver as a module.
387
387
1. Add a data source with the module.
388
388
389
-
App Service is a stateless hosting service, so you must put these steps into a startup script and run it each time the JBoss container starts. Using PostgreSQLand MySQL as an examples:
389
+
App Service is a stateless hosting service, so you must put these steps into a startup script and run it each time the JBoss container starts. Using PostgreSQL, MySQL, and SQL Database as an examples:
390
390
391
391
# [PostgreSQL](#tab/postgresql)
392
392
@@ -396,6 +396,10 @@ App Service is a stateless hosting service, so you must put these steps into a s
Copy file name to clipboardExpand all lines: articles/app-service/configure-language-java-deploy-run.md
+24-21Lines changed: 24 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -444,17 +444,20 @@ In your JBoss app's SSH session, you can run the JBoss CLI with the following co
444
444
$JBOSS_HOME/bin/jboss-cli.sh --connect
445
445
```
446
446
447
-
Depending on where JBoss is in the server lifecycle, you might not be able to connect. Wait a few minutes and try again. Note also that changes you make to the server with JBoss CLI doesn't persist after the app restarts. This approach is useful for quick checks of your current server state (for example, to see if a data source is properly configured).
447
+
Depending on where JBoss is in the server lifecycle, you might not be able to connect. Wait a few minutes and try again. This approach is useful for quick checks of your current server state (for example, to see if a data source is properly configured).
448
448
449
-
The most reliable way to run JBoss CLI and persist your server changes is running it inside a startup script or a startup command. To do this, upload a file directly as a startup script. For an end-to-end example, see [Configure data sources for a Tomcat, JBoss, or Java SE app in Azure App Service](configure-language-java-data-sources.md?pivots=java-jboss).
449
+
Also, changes you make to the server with JBoss CLI in the SSH session doesn't persist after the app restarts. Each time the app starts, the JBoss EAP server begins with a clean installation. During the [startup lifecycle](#jboss-server-lifecycle), App Service makes the necessary server configurations and deploys the app. To make any persistent changes in the JBoss server, use a [custom startup script or a startup command](#3-server-configuration-phase). For an end-to-end example, see [Configure data sources for a Tomcat, JBoss, or Java SE app in Azure App Service](configure-language-java-data-sources.md?pivots=java-jboss).
450
450
451
451
Alternatively, you can manually configure App Service to run any file on startup. For example:
452
452
453
453
```azurecli-interactive
454
454
az webapp config set --resource-group <group-name> --name <app-name> --startup-file /home/site/scripts/foo.sh
455
455
```
456
456
457
-
For more information about the CLI commands you can run, see the [Red Hat JBoss EAP documentation](https://docs.redhat.com/en/documentation/red_hat_jboss_enterprise_application_platform/8.0/html-single/getting_started_with_red_hat_jboss_enterprise_application_platform/index#management-cli-overview_assembly-jboss-eap-management).
457
+
For more information about the CLI commands you can run, see:
458
+
459
+
-[Red Hat JBoss EAP documentation](https://docs.redhat.com/en/documentation/red_hat_jboss_enterprise_application_platform/8.0/html-single/getting_started_with_red_hat_jboss_enterprise_application_platform/index#management-cli-overview_assembly-jboss-eap-management)
@@ -520,28 +523,28 @@ See respective sections below for details as well as opportunities to customize
520
523
- If JBoss is launched in the `clustering` configuration:
521
524
- Each JBoss instance receives an internal identifier between 0 and the number of instances that the app is scaled out to.
522
525
- If some files are found in the transaction store path for this server instance (by using its internal identifier), it means this server instance is taking the place of an identical service instance that crashed previously and left uncommitted transactions behind. The server is configured to resume the work on these transactions.
523
-
- Regardless of JBoss starting in the `clustering` or `standalone` configuration, if the server version is 7.4 or above, and the runtime uses Java 17, then the configuration is updated to enable the Elytron subsystem for security.<!-- using the JBoss CLI commands provided in the file docs/examples/enable-elytron-se17.cli -->
526
+
- Regardless if JBoss starting in the `clustering` or `standalone` configuration, if the server version is 7.4 or above and the runtime uses Java 17, then the configuration is updated to enable the Elytron subsystem for security.
524
527
- If you configure the app setting `WEBSITE_JBOSS_OPTS`, the value is passed to the JBoss launcher script. This setting can be used to provide paths to property files and more flags that influence the startup of JBoss.
525
528
526
529
### 3. Server configuration phase
527
530
528
-
- At the start of this phase, the startup script first waits for both the JBoss server and the admin interface to be ready to receive requests before continuing. This can take a few more seconds if App Insights is enabled.
529
-
- When both JBoss Server and the admin interface are ready, it runs a JBoss CLI script to do the following:
530
-
-Add the JBoss module `azure.appservice`, which provides utility classes for logging and integration with App Service.
531
-
-Update the console logger to use a colorless mode so that log files aren't full of color escaping sequences.
532
-
-Set up the integration with Azure Monitor logs.
533
-
-Update the binding IP addresses of the WSDL and management interfaces.
534
-
-Add the JBoss module `azure.appservice.easyauth` for integration with [App Service authentication](overview-authentication-authorization.md) and Microsoft Entra ID.
535
-
-Update the logging configuration of access logs and the name and rotation of the main server log file.
536
-
- Unless the app setting `WEBSITE_SKIP_AUTOCONFIGURE_DATABASE` is defined, the startup script performs autodetection of JDBC URLs in the App Service app settings. If valid JDBC URLs exist for PostgreSQL, MySQL, MariaDB, Oracle, or SQL Server, the startup script adds the corresponding driver(s) to the server and adds a data source for each of the JDBC URL. The JNDI name for each data source is`java:jboss/env/jdbc/<app-setting-name>_DS`, where `<app-setting-name>` is the name of the app setting.
537
-
- If the `clustering` configuration is enabled, the startup script checks for the console logger to be configured. <!-- JBoss script /usr/local/appservice/lib/azure.appservice.clustering.cli will be run. At this time, the script only checks for the console logger to be configured. In the future some extra configuration specific for clustering could be added. -->
538
-
- If there are JAR files deployed to the */home/site/libs* directory, a new global module is created adding all these JAR files.
539
-
-Run the custom startup script, if one is provided. The script to use is determined, in order of precedence:
540
-
- If you configured a startup command, run it.
541
-
- If the path */home/site/scripts/startup.sh* exists, run it.
542
-
- If the path */home/startup.sh* exists, run it.
543
-
544
-
The custom startup command or script runs as the root user (no need for `sudo`), so they can install Linux packages or launch the JBoss CLI to perform more JBoss install/customization commands (creating datasources, installing resource adapters), etc. For information on Ubuntu package management commands, see the [Ubuntu Server documentation](https://documentation.ubuntu.com/server/how-to/software/package-management/). ForJBoss CLI commands, see the [JBoss Management CLI Guide](https://docs.redhat.com/en/documentation/red_hat_jboss_enterprise_application_platform/7.4/html-single/management_cli_guide/index#how_to_cli).
531
+
- At the start of this phase, App Service first waits for both the JBoss server and the admin interface to be ready to receive requests before continuing. This can take a few more seconds if Application Insights is enabled.
532
+
- When both JBoss Server and the admin interface are ready, App Service does the following:
533
+
-Adds the JBoss module `azure.appservice`, which provides utility classes for logging and integration with App Service.
534
+
-Updates the console logger to use a colorless mode so that log files aren't full of color escaping sequences.
535
+
-Sets up the integration with Azure Monitor logs.
536
+
-Updates the binding IP addresses of the WSDL and management interfaces.
537
+
-Adds the JBoss module `azure.appservice.easyauth` for integration with [App Service authentication](overview-authentication-authorization.md) and Microsoft Entra ID.
538
+
-Updates the logging configuration of access logs and the name and rotation of the main server log file.
539
+
- Unless the app setting `WEBSITE_SKIP_AUTOCONFIGURE_DATABASE` is defined, App Service autodetects JDBC URLs in the App Service app settings. If valid JDBC URLs exist for PostgreSQL, MySQL, MariaDB, Oracle, SQL Server, or Azure SQL Database, it adds the corresponding driver(s) to the server and adds a data source for each of the JDBC URL and sets the JNDI name for each data source to`java:jboss/env/jdbc/<app-setting-name>_DS`, where `<app-setting-name>` is the name of the app setting.
540
+
- If the `clustering` configuration is enabled, the console logger to be configured is checked.
541
+
- If there are JAR files deployed to the */home/site/libs* directory, a new global module is created with all of these JAR files.
542
+
-At the end of the phase, App Service runs the custom startup script, if one exists. The search logic for the custom startup script as follows:
543
+
- If you configured a startup command (in the Azure portal, with Azure CLI, etc.), run it; otherwise,
544
+
- If the path */home/site/scripts/startup.sh* exists, use it; otherwise,
545
+
- If the path */home/startup.sh* exists, use it.
546
+
547
+
The custom startup command or script runs as the root user (no need for `sudo`), so they can install Linux packages or launch the JBoss CLI to perform more JBoss install/customization commands (creating datasources, installing resource adapters), etc. For information on Ubuntu package management commands, see the [Ubuntu Server documentation](https://documentation.ubuntu.com/server/how-to/software/package-management/). For JBoss CLI commands, see the [JBoss Management CLI Guide](https://docs.redhat.com/en/documentation/red_hat_jboss_enterprise_application_platform/7.4/html-single/management_cli_guide/index#how_to_cli).
Copy file name to clipboardExpand all lines: articles/app-service/includes/configure-language-java-data-sources/configure-jboss-mysql.md
+1-2Lines changed: 1 addition & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,7 +10,6 @@ ms.author: cephalin
10
10
1. Put your JBoss CLI commands into a file named *jboss-cli-commands.cli*. The JBoss commands must add the module and register it as a data source. The following example shows the JBoss CLI commands for creating a MySQL data source with the JNDI name `java:jboss/datasources/mysqlDS`.
To confirm that the datasource was added to the JBoss server, SSH into your webapp and run `$JBOSS_HOME/bin/jboss-cli.sh --connect`. Once you're connected to JBoss, run the `/subsystem=datasources:read-resource` to print a list of the data sources.
79
+
To confirm that the data source was added to the JBoss server, SSH into your webapp and run `$JBOSS_HOME/bin/jboss-cli.sh --connect`. Once you're connected to JBoss, run the `/subsystem=datasources:read-resource` to print a list of the data sources.
81
80
82
81
As defined by *jboss-cli-commands.cli* previously, you can access the MySQL connection using the JNDI name `java:jboss/datasources/mysqlDS`.
Copy file name to clipboardExpand all lines: articles/app-service/includes/configure-language-java-data-sources/configure-jboss-postgresql.md
+4-5Lines changed: 4 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,8 +10,7 @@ ms.author: cephalin
10
10
1. Put your JBoss CLI commands into a file named *jboss-cli-commands.cli*. The JBoss commands must add the module and register it as a data source. The following example shows the JBoss CLI commands for creating a PostgreSQL data source with the JNDI name `java:jboss/datasources/postgresDS`.
<directory>${project.build.directory}/${project.artifactId}/META-INF/lib</directory><!-- Assume driver is part of POM dependencies. -->
53
52
<includes>
54
-
<include>postgresql-42.7.1.jar</include>
53
+
<include>postgresql-42.7.4.jar</include>
55
54
</includes>
56
55
</resource>
57
56
<resource>
@@ -77,6 +76,6 @@ ms.author: cephalin
77
76
78
77
---
79
78
80
-
To confirm that the datasource was added to the JBoss server, SSH into your webapp and run `$JBOSS_HOME/bin/jboss-cli.sh --connect`. Once you're connected to JBoss, run the `/subsystem=datasources:read-resource` to print a list of the data sources.
79
+
To confirm that the data source was added to the JBoss server, SSH into your webapp and run `$JBOSS_HOME/bin/jboss-cli.sh --connect`. Once you're connected to JBoss, run the `/subsystem=datasources:read-resource` to print a list of the data sources.
81
80
82
81
As defined by *jboss-cli-commands.cli* previously, you can access the PostgreSQL connection using the JNDI name `java:jboss/datasources/postgresDS`.
0 commit comments