練習 - 存取 JBoss EAP 管理工具和應用程式記錄檔
在此練習中,您會存取 JBoss 管理工具並串流應用程式記錄。
設定環境變數
在此練習中,您需要先前練習中的一些環境變數。 如果您使用相同的Bash視窗,這些變數仍應存在。 如果變數已無法使用,請使用下列命令來重新建立它們。 請務必以 <您自己的值取代 ...> 佔位元,並使用您先前使用的相同值。
export RESOURCE_GROUP_NAME=<resource-group>
export WEB_APP_NAME=<app-name>
建立 TCP 通道
若要存取遠端伺服器,請使用下列命令,在遠端伺服器與本機計算機之間建立 TCP 通道:
az webapp create-remote-connection \
--resource-group ${RESOURCE_GROUP_NAME} \
--name ${WEB_APP_NAME}
輸出包含 TCP 通道埠號碼、使用者名稱和密碼。 請務必將此資訊儲存在一邊,以供稍後使用。
使用 SSH 和 TCP 通道登入
若要使用 SSH 和 TCP 通道登入伺服器,請使用下列步驟:
開啟新的命令終端機。
使用下列命令登入伺服器。 請務必將
<port-number>預留位置取代為您在上一節中所擷取的連接埠號碼。export PORT_NUMBER=<port-number> ssh root@127.0.0.1 -L 9990:localhost:9990 -p $PORT_NUMBER小提示
如果您想要存取 JBoss EAP 管理主控台,請指定
-L 9990:localhost:9990選項。 然後,存取http://localhost:9990/console上的 JBoss Web 控制台。 如果您不需要登入 JBoss Web 控制台,您可以移除-L選項。下列輸出是典型的:
ssh root@127.0.0.1 -L 9990:localhost:9990 -p 65171 root@127.0.0.1's password: Last login: Tue Feb 25 07:44:49 2025 from 169.254.129.2 _|_| _| _| _|_|_|_| _| _| _| _|_| _|_| _|_|_|_| _| _| _| _|_| _|_|_|_| _| _| _| _| _| _| _| _| _| _|_|_|_| _|_|_| _| _|_|_| J A V A O N A P P S E R V I C E Documentation: https://aka.ms/appservice **NOTE**: No files or system changes outside of /home will persist beyond your application's current session. /home is your application's persistent storage and is shared across all the server instances.
執行 JBoss CLI 工具
登入遠端伺服器之後,您可以使用下列步驟執行 JBoss EAP 系統管理 CLI 工具 /opt/eap/bin/jboss-cli.sh:
使用下列命令連線到 JBoss EAP:
/opt/eap/bin/jboss-cli.sh --connect下列輸出是典型的:
OpenJDK 64-Bit Server VM warning: Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release.線上到 JBoss EAP 伺服器之後,請在 JBoss 提示字元中使用下列命令來取得 JBoss 伺服器資訊:
product-info下列輸出是典型的:
{ "outcome" => "success", "result" => [{"summary" => { "host-name" => "jakartaee-aaaabbbb", "instance-identifier" => "aaaaaaaa-1111-bbbb-2222-cccccccccccc", "product-name" => "JBoss EAP", "product-version" => "8.0 Update 4.1", "product-community-identifier" => "Product", "product-home" => "/opt/eap", "standalone-or-domain-identifier" => "STANDALONE_SERVER", "host-operating-system" => "Ubuntu 22.04.5 LTS", "host-cpu" => { "host-cpu-arch" => "amd64", "host-core-count" => 2 }, "jvm" => { "name" => "OpenJDK 64-Bit Server VM", "java-version" => "17", "jvm-version" => "17.0.13", "jvm-vendor" => "Microsoft", "java-home" => "/usr/lib/jvm/msopenjdk-17-amd64" } }}] }使用下列命令列出所有已部署的應用程式:
ls deployment下列輸出是典型的:
ROOT.war使用下列命令測試資料庫連線:
/subsystem=datasources/data-source="JPAWorldDataSourceDS":test-connection-in-pool下列輸出是典型的:
{ "outcome" => "success", "result" => [true] }使用下列命令退出 JBoss EAP CLI:
exit
存取 JBoss EAP 管理控制台
接下來,使用下列步驟存取 JBoss 系統管理 Web 控制台:
使用下列命令建立用於驗證的系統管理員使用者和密碼:
/opt/eap/bin/add-user.sh -u admin -p admin -r ManagementRealm下列輸出是典型的:
Picked up JAVA_TOOL_OPTIONS: -Xmx5480M -Djava.net.preferIPv4Stack=true Updated user 'admin' to file '/opt/eap/standalone/configuration/mgmt-users.properties' Updated user 'admin' to file '/opt/eap/domain/configuration/mgmt-users.properties'使用
http://127.0.0.1:9990/console,從本機環境中的網頁瀏覽器存取 Web 控制台。在 [驗證] 對話框中,使用先前建立的使用者名稱和密碼登入。
登入 Web 控制台之後,會出現下列畫面:
選取 [設定>子系統>數據源和驅動程序>數據源],確認您已建立數據源。
您也可以透過選取 [執行階段]><[您的系統]>>[JAX-RS]><[您的應用程式]> 來確認應用程式的 RESTful 端點。
警告
如果您透過 JBoss CLI 命令或 Web 控制台直接存取遠端伺服器,並新增或更新設定,則會在重新啟動 Azure App Service 實例之後清除並刪除設定。 若要保存組態,請使用啟動腳本,例如上一個單元中使用的 createMySQLDataSource.sh 腳本。
開啟記錄數據流
使用下列命令存取紀錄:
az webapp log tail \
--resource-group ${RESOURCE_GROUP_NAME} \
--name ${WEB_APP_NAME}
下列輸出是典型的:
2025-02-25T06:58:11.5107300Z Waiting for main process to exit. GLOBAL_PID_MAIN=123
2025-02-25T06:58:11.5109525Z Waiting for GLOBAL_PID_MAIN == 123
2025-02-25T06:58:12.7891598Z 2025-02-25 06:58:12,786 WARN [org.apache.activemq.artemis.core.server.impl.FileLockNodeManager] (Thread-2 (ActiveMQ-scheduled-threads)) Lost the lock according to the monitor, notifying listeners
2025-02-25T06:58:14.3783443Z 2025-02-25 06:58:14,377 INFO [org.jboss.as.jpa] (MSC service thread 1-2) WFLYJPA0002: Read persistence.xml for JPAWorldDatasourcePU
2025-02-25T06:58:14.7548991Z 2025-02-25 06:58:14,752 INFO [org.jipijapa] (MSC service thread 1-3) JIPIORMV6020260: Second level cache enabled for ROOT.war#JPAWorldDatasourcePU
2025-02-25T06:58:14.7971763Z 2025-02-25 06:58:14,796 WARN [org.apache.activemq.artemis.core.server.impl.FileLockNodeManager] (Thread-2 (ActiveMQ-scheduled-threads)) Lost the lock according to the monitor, notifying listeners
2025-02-25T06:58:14.9371057Z 2025-02-25 06:58:14,924 INFO [org.jboss.weld.deployer] (MSC service thread 1-4) WFLYWELD0003: Processing weld deployment ROOT.war
2025-02-25T06:58:15.2875956Z 2025-02-25 06:58:15,280 INFO [org.hibernate.validator.internal.util.Version] (MSC service thread 1-4) HV000001: Hibernate Validator 8.0.1.Final-redhat-00001
2025-02-25T06:58:16.0075988Z 2025-02-25 06:58:16,003 INFO [org.infinispan.CONTAINER] (ServerService Thread Pool -- 78) ISPN000556: Starting user marshaller 'org.wildfly.clustering.infinispan.marshalling.jboss.JBossMarshaller'
2025-02-25T06:58:16.0534913Z 2025-02-25 06:58:16,048 INFO [org.jipijapa] (MSC service thread 1-1) JIPIORMV6020260: Second level cache enabled for ROOT.war#JPAWorldDatasourcePU
2025-02-25T06:58:16.1970192Z 2025-02-25 06:58:16,192 INFO [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-1) WFLYJCA0005: Deploying non-JDBC-compliant driver class com.mysql.cj.jdbc.Driver (version 9.2)
2025-02-25T06:58:16.2695781Z 2025-02-25 06:58:16,265 INFO [org.jboss.weld.Version] (MSC service thread 1-1) WELD-000900: 5.1.2 (redhat)
2025-02-25T06:58:16.4228682Z 2025-02-25 06:58:16,421 INFO [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-3) WFLYJCA0018: Started Driver service with driver-name = ROOT.war_com.mysql.cj.jdbc.Driver_9_2
2025-02-25T06:58:16.4261069Z 2025-02-25 06:58:16,425 INFO [org.jboss.as.connector.subsystems.datasources.AbstractDataSourceService$AS7DataSourceDeployer] (MSC service thread 1-3) IJ020018: Enabling <validate-on-match> for java:jboss/datasources/JPAWorldDataSource
2025-02-25T06:58:16.4349571Z 2025-02-25 06:58:16,428 INFO [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-3) WFLYJCA0001: Bound data source [java:jboss/datasources/JPAWorldDataSource]
2025-02-25T06:58:16.7892296Z 2025-02-25 06:58:16,787 INFO [org.jboss.as.jpa] (ServerService Thread Pool -- 78) WFLYJPA0010: Starting Persistence Unit (phase 1 of 2) Service 'ROOT.war#JPAWorldDatasourcePU'
2025-02-25T06:58:16.8070373Z 2025-02-25 06:58:16,805 INFO [org.hibernate.jpa.internal.util.LogHelper] (ServerService Thread Pool -- 78) HHH000204: Processing PersistenceUnitInfo [name: JPAWorldDatasourcePU]
練習摘要
在本單元中,您已瞭解如何在 Azure App Service 上設定及部署 Jakarta EE 10 應用程式至 JBoss EAP。 然後,您已使用 DataSource 物件將 MySQL 連接到啟動文稿中的 JBoss EAP。
您也瞭解如何使用 TCP 通道,從 CLI 和圖形使用者介面 (GUI) 存取遠端伺服器。 最後,您已從本機計算機存取記錄檔。



