3.6. 文件系统路径
JBoss EAP 为文件系统路径使用逻辑名称。然后,配置的其他区域可以使用其逻辑名称来引用路径,从而避免了为每个实例使用绝对路径,并允许特定主机配置解析到通用逻辑名称。
例如,默认 日志记录子系统 配置声明 jboss.server.log.dir 作为服务器日志目录的逻辑名称。
示例:服务器日志目录的相对路径示例
<file relative-to="jboss.server.log.dir" path="server.log"/>
<file relative-to="jboss.server.log.dir" path="server.log"/>
JBoss EAP 自动提供很多标准路径,无需用户在配置文件中配置它们。
| 属性 | 描述 |
|---|---|
| java.home | Java 安装目录 |
| jboss.controller.temp.dir |
单机服务器和受管域的通用别名。用于临时文件存储的目录。等同于受管域中的 |
| jboss.domain.base.dir | 域内容的基础目录。 |
| jboss.domain.config.dir | 包含域配置的目录。 |
| jboss.domain.data.dir | 域要用于持久数据文件存储的目录。 |
| jboss.domain.log.dir | 域要用于持久日志文件存储的目录。 |
| jboss.domain.temp.dir | 域要用于临时文件存储的目录。 |
| jboss.domain.deployment.dir | 域用于存储部署的内容的目录。 |
| jboss.domain.servers.dir | 域用于存储受管域实例输出的目录。 |
| jboss.home.dir | JBoss EAP 分发的根目录。 |
| jboss.server.base.dir | 单机服务器内容的基础目录。 |
| jboss.server.config.dir | 包含独立服务器配置的目录。 |
| jboss.server.data.dir | 单机服务器将用于持久数据文件存储的目录。 |
| jboss.server.log.dir | 单机服务器将用于日志文件存储的目录。 |
| jboss.server.temp.dir | 单机服务器将用于临时文件存储的目录。 |
| jboss.server.deploy.dir | 单机服务器将用于存储部署的内容的目录。 |
| user.dir | 用户的当前工作目录。 |
| user.home | 用户主目录。 |
3.6.1. 查看文件系统路径 复制链接链接已复制到粘贴板!
使用以下管理 CLI 命令列出文件系统路径:
ls /path
ls /path
在受管域中,您可以使用以下管理 CLI 命令列出特定服务器的文件系统路径:
ls /host=HOST_NAME/server=SERVER_NAME/path
ls /host=HOST_NAME/server=SERVER_NAME/path
使用以下管理 CLI 命令读取文件系统路径的值:
/path=PATH_NAME:read-resource
/path=PATH_NAME:read-resource
在受管域中,您可以使用以下管理 CLI 命令读取特定服务器的文件系统路径值:
/host=HOST_NAME/server=SERVER_NAME/path=PATH_NAME:read-resource
/host=HOST_NAME/server=SERVER_NAME/path=PATH_NAME:read-resource
3.6.2. 覆盖标准路径 复制链接链接已复制到粘贴板!
您可以覆盖以 jboss. server record 或 。这可以通过两种方式之一完成:
jboss. domain regarding 开头的标准路径的默认位置
启动服务器时传递命令行参数。例如:
EAP_HOME/bin/standalone.sh -Djboss.server.log.dir=/var/log
$ EAP_HOME/bin/standalone.sh -Djboss.server.log.dir=/var/logCopy to Clipboard Copied! Toggle word wrap Toggle overflow 修改服务器配置文件中的
JAVA_OPTS变量(可以是standalone.conf或domain.conf)使其包含新位置。例如:JAVA_OPTS="$JAVA_OPTS -Djboss.server.log.dir=/var/log"
JAVA_OPTS="$JAVA_OPTS -Djboss.server.log.dir=/var/log"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
覆盖受管域中的标准路径
在本例中,目标是将域文件存储在 /opt/jboss_eap/domain_data 目录中,并为每个顶级目录指定一个自定义名称。使用默认目录分组 (按服务器 )。
-
日志文件要存储在
all_logs子目录中 -
数据文件要存储在
all_data子目录中 -
临时文件存储在
all_temp子目录中 -
服务器的文件存储在
all_servers子目录中
要实现此配置,您可以在启动 JBoss EAP 时覆盖多个系统属性。
EAP_HOME/bin/domain.sh -Djboss.domain.temp.dir=/opt/jboss_eap/domain_data/all_temp -Djboss.domain.log.dir=/opt/jboss_eap/domain_data/all_logs -Djboss.domain.data.dir=/opt/jboss_eap/domain_data/all_data -Djboss.domain.servers.dir=/opt/jboss_eap/domain_data/all_servers
$ EAP_HOME/bin/domain.sh -Djboss.domain.temp.dir=/opt/jboss_eap/domain_data/all_temp -Djboss.domain.log.dir=/opt/jboss_eap/domain_data/all_logs -Djboss.domain.data.dir=/opt/jboss_eap/domain_data/all_data -Djboss.domain.servers.dir=/opt/jboss_eap/domain_data/all_servers
生成的路径结构如下:
3.6.3. 添加自定义路径 复制链接链接已复制到粘贴板!
您可以使用管理 CLI 或管理控制台添加自定义文件系统路径。
先决条件
- JBoss EAP 正在运行。
流程
在管理 CLI 中,您可以使用以下管理 CLI 命令添加新路径。
/path=my.custom.path:add(path=/my/custom/path)
/path=my.custom.path:add(path=/my/custom/path)Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 在管理控制台中,您可以通过进入到 Configuration 选项卡、选择 Paths 并单击 View 来配置文件系统路径。在这里,您可以添加、修改和删除路径。
然后您可以在配置中使用此自定义路径。例如,以下日志处理程序对其相对路径使用自定义路径。