Xray-core: Add Lua script for dns and routing

https://github.com/XTLS/Xray-core/pull/6823
This commit is contained in:
Meow
2026-10-11 09:55:19 +08:00
parent 4c8f3b2b7e
commit f179efd35d
48 changed files with 4950 additions and 0 deletions
@@ -0,0 +1,69 @@
# xray.log
将日志写入 Xray 的日志系统。
```lua
local log = require("xray.log")
```
## API 索引
| 分类 | 成员 | 说明 |
| ---- | ---------------------------------- | ----------------- |
| 函数 | [`log.Debug(...)`](#log-debug) | 记录 debug 日志 |
| 函数 | [`log.Info(...)`](#log-info) | 记录 info 日志 |
| 函数 | [`log.Warning(...)`](#log-warning) | 记录 warning 日志 |
| 函数 | [`log.Error(...)`](#log-error) | 记录 error 日志 |
## 函数
### log.Debug
```lua
log.Debug(...)
```
记录 `debug` 级别的日志。
**参数**
| 参数 | 类型 | 说明 / 要求 |
| ----- | ----------- | ------------------------------------ |
| `...` | 任意 Lua 值 | 可选,任意数量的日志内容,按顺序拼接 |
**返回值**
无返回值。
**参数转换**
参数接受不传参数、`nil`、`""`、`{}` 和空 slice,按顺序转为文本并拼接,不自动插入空格或分隔符。
- [`error`](./data-types.md#error) 优先转为错误消息。
- 其他具有函数类型 `__tostring` 的值使用该转换;转换抛出的异常向调用者传播。
- 其余值使用默认字符串表示。`nil` 转为 `"nil"`,空字符串不增加正文;table 和 slice 不会展开为元素列表。
**输出条件**
日志以调用脚本的文件名为前缀,是否输出取决于 [`log.loglevel`](../../../config/log.md#logobject)。例如设置为 `warning` 时,`Debug` 和 `Info` 不输出,也不会调用参数的 `__tostring` 转换。
四个函数均没有 `err` 返回值。将调用赋给变量时,该变量为 `nil`,不能据此判断日志是否成功输出。
**示例**
```lua
log.Info("查询域名:", domain)
log.Warning("上游查询失败:", err)
```
### log.Info
同上。
### log.Warning
同上。
### log.Error
同上。