全局配置

目录结构

|-- /
  |-- global_configs.yaml

global_configs.yaml 文件中需位于您配置目录的根目录中,并且名称固定为 global_configs.yaml。 其中包含 访问日志格式自定义共享内存区全局变量 等配置。

访问日志格式配置

在 OpenResty Edge 中,您可以配置多个访问日志格式。为此,访问日志格式以数组形式进行表示。

参数说明

参数名数据类型是否必选描述
namestring访问日志格式的唯一标识名称
formatstring定义日志格式
escapestring指定日志字符的转义方式,可选值包括:default、none、json
defaultbool指定该日志格式是否作为默认日志格式

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 的访问日志格式。在日志格式列表中,将包含 examplemain 两个日志格式。 在 format 参数中指定的日志格式内容里,使用了一个名为 uuid 的全局用户变量,表示为 $or_global_user_variable_uuid

自定义共享内存区配置

您可以定义多个共享内存区,因此这些区域以数组形式表示。

参数详解

参数名数据类型是否必选描述
namestring共享内存区的唯一标识名称
sizestring定义共享内存区的容量大小
size_unitstring指明共享内存区大小的单位,可选值为 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

全局用户变量

您可以定义多个全局变量,因此变量以数组形式表示。

参数详解

参数名数据类型是否必选描述
namestring变量的唯一标识名称
typestring变量的数据类型,可选值为 string, num, int, bool
defaultstring变量的默认值

配置示例

user_variables:
- name: uuid
  type: string
  default: '-'

在此示例中,定义了一个名为 uuid 的全局用户变量。

全局用户变量可以在访问日志或 Edgelang 脚本中使用,格式为 $or_global_user_variable_<变量名>。例如:

$or_global_user_variable_uuid

相关文档