全局配置
目录结构
|-- /
|-- global_configs.yaml
global_configs.yaml
文件中需位于您配置目录的根目录中,并且名称固定为 global_configs.yaml
。
其中包含 访问日志格式
、自定义共享内存区
、全局变量
等配置。
访问日志格式配置
在 OpenResty Edge 中,您可以配置多个访问日志格式。为此,访问日志格式以数组形式进行表示。
参数说明
参数名 | 数据类型 | 是否必选 | 描述 |
---|---|---|---|
name | string | 是 | 访问日志格式的唯一标识名称 |
format | string | 是 | 定义日志格式 |
escape | string | 否 | 指定日志字符的转义方式,可选值包括:default、none、json |
default | bool | 否 | 指定该日志格式是否作为默认日志格式 |
default
参数决定是否将此日志格式设置为默认选项。如果设置为默认,那么没有特别指定日志格式的应用将采用该格式。
注意:配置中有且只能有一个默认的日志格式。
配置示例
access_log_formats:
- default: false
name: example
escape: json
format: |-
{
"time_local": "$time_local",
"method": "$request_method",
"request": "$request",
"transid": "$or_global_user_variable_uuid",
"upstream_header_time": "$upstream_header_time"
}
依照此示例配置,将会创建一个名为 example
的访问日志格式。在日志格式列表中,将包含 example
和 main
两个日志格式。
在 format
参数中指定的日志格式内容里,使用了一个名为 uuid
的全局用户变量,表示为 $or_global_user_variable_uuid
。
自定义共享内存区配置
您可以定义多个共享内存区,因此这些区域以数组形式表示。
参数详解
参数名 | 数据类型 | 是否必选 | 描述 |
---|---|---|---|
name | string | 是 | 共享内存区的唯一标识名称 |
size | string | 否 | 定义共享内存区的容量大小 |
size_unit | string | 是 | 指明共享内存区大小的单位,可选值为 k、m、g |
配置示例
custom_shared_zone:
- size_unit: m
name: cache_shared_dict
size: 1
- size_unit: m
name: rec_cache_shared_dict
size: 1
全局用户变量
您可以定义多个全局变量,因此变量以数组形式表示。
参数详解
参数名 | 数据类型 | 是否必选 | 描述 |
---|---|---|---|
name | string | 是 | 变量的唯一标识名称 |
type | string | 是 | 变量的数据类型,可选值为 string, num, int, bool |
default | string | 是 | 变量的默认值 |
配置示例
user_variables:
- name: uuid
type: string
default: '-'
在此示例中,定义了一个名为 uuid
的全局用户变量。
全局用户变量可以在访问日志或 Edgelang 脚本中使用,格式为 $or_global_user_variable_<变量名>
。例如:
$or_global_user_variable_uuid