feat(audit): add localized security audit logs (#5462)

This commit is contained in:
Calcium-Ion
2026-06-12 23:40:40 +08:00
committed by GitHub
parent 27b2b2c4b9
commit d0c4305a16
25 changed files with 1249 additions and 33 deletions
+72 -1
View File
@@ -46,6 +46,7 @@
"{{count}} weeks ago": "{{count}} 周前",
"{{field}} updated to {{value}}": "{{field}} 已更新为 {{value}}",
"{{field}} updated to {{value}} for tag: {{tag}}": "标签「{{tag}}」的 {{field}} 已更新为 {{value}}",
"{{method}} {{route}}": "{{method}} {{route}}",
"{{modality}} not supported": "不支持 {{modality}}",
"{{modality}} supported": "支持 {{modality}}",
"{{n}} model(s) selected": "已选 {{n}} 个模型",
@@ -122,6 +123,7 @@
"Account used when authenticating with the SMTP server": "用于与 SMTP 服务器进行身份验证的账户",
"acknowledge the related legal risks": "确认相关法律风险",
"Across all groups": "跨所有分组",
"Action": "操作",
"Action confirmation": "操作确认",
"Actions": "操作",
"active": "活跃",
@@ -372,6 +374,8 @@
"appended": "已追加",
"Application": "应用",
"Applied {{name}} pricing to {{count}} models": "已将 {{name}} 的定价应用到 {{count}} 个模型",
"Applied upstream model changes to {{count}} channels": "对 {{count}} 个渠道应用上游模型变更",
"Applied upstream model changes to channel (ID: {{id}})": "对渠道(ID: {{id}})应用上游模型变更",
"Applies to custom completion endpoints. JSON map of model → ratio.": "适用于自定义补全端点。模型 → 比例的 JSON 映射。",
"Apply All Upstream Updates": "应用所有上游更新",
"Apply Filters": "应用筛选器",
@@ -519,6 +523,7 @@
"Basic Templates": "基础模板",
"Batch Add (one key per line)": "批量添加(每行一个密钥)",
"Batch delete failed": "批量删除失败",
"Batch deleted {{count}} channels": "批量删除 {{count}} 个渠道",
"Batch detection complete: {{channels}} channels, {{add}} to add, {{remove}} to remove, {{fails}} failed": "批量检测完成:渠道 {{channels}} 个,新增 {{add}} 个,删除 {{remove}} 个,失败 {{fails}} 个",
"Batch detection failed": "批量检测失败",
"Batch disable failed": "批量禁用失败",
@@ -527,6 +532,7 @@
"Batch Edit by Tag": "按标签批量编辑",
"Batch enable failed": "批量启用失败",
"Batch processing failed": "批量处理失败",
"Batch set tag for {{count}} channels": "批量为 {{count}} 个渠道设置标签",
"Batch upstream model updates applied: {{channels}} channels, {{added}} added, {{removed}} removed, {{fails}} failed": "已批量处理上游模型更新:渠道 {{channels}} 个,加入 {{added}} 个,删除 {{removed}} 个,失败 {{fails}} 个",
"Best for single-tenant deployments. Pricing and billing options stay hidden.": "适合单用户部署。定价和计费选项将被隐藏。",
"Best TTFT": "最优 TTFT",
@@ -566,6 +572,7 @@
"Bot Token": "机器人令牌",
"Bot:": "机器人:",
"Bound": "已绑定",
"Bound a subscription": "绑定了一个订阅",
"Bound Channels": "绑定渠道",
"Bound Only": "仅已绑定",
"Bound product:": "已绑定产品:",
@@ -639,6 +646,7 @@
"Change language": "更改语言",
"Change Password": "更改密码",
"Change To": "更改为",
"Changed Fields": "变更字段",
"Changes are written to the settings draft on save.": "保存后会写入设置草稿。",
"Changing...": "修改中...",
"Channel": "渠道",
@@ -735,7 +743,12 @@
"Clear selection": "清除选择",
"Clear selection (Escape)": "清除选择 (Escape)",
"Cleared": "已清空",
"Cleared {{bindingType}} binding for user {{username}}": "清除用户 {{username}} 的 {{bindingType}} 绑定",
"Cleared all models": "已清除所有模型",
"Cleared channel affinity cache": "清除渠道亲和缓存",
"Cleared disk cache": "清除磁盘缓存",
"Cleared historical logs": "清理历史日志",
"Cleared log files": "清理日志文件",
"Click \"Create Plan\" to create your first subscription plan": "点击「新建套餐」创建您的第一个订阅套餐",
"Click \"Generate\" to create a token": "点击“生成”以创建令牌",
"Click any category to drill into its models, apps, and trends": "点击任意分类可下钻查看其模型、应用与趋势",
@@ -808,6 +821,7 @@
"Complete Order": "补单",
"Complete these steps to finish the initial installation.": "完成这些步骤以完成初始安装。",
"Completed": "已完成",
"Completed top-up order for the user": "为用户完成补单",
"Completion": "补全",
"Completion price": "补全价格",
"Completion price ($/1M tokens)": "完成价格(美元/百万令牌)",
@@ -887,6 +901,7 @@
"Confirm your identity before removing this Passkey from your account.": "在解绑当前账号的 Passkey 前请确认你的身份。",
"Confirm your identity with Two-factor Authentication before registering a Passkey.": "在注册 Passkey 前请使用两步验证确认你的身份。",
"Confirmed at {{time}} by user #{{userId}}": "用户 #{{userId}} 于 {{time}} 确认",
"Confirmed payment compliance": "确认支付合规",
"Conflict": "矛盾",
"Connect": "连接",
"Connect through OpenAI, Claude, Gemini, and other compatible API routes": "通过 OpenAI、Claude、Gemini 以及其他兼容 API 路由接入",
@@ -929,6 +944,7 @@
"Convert string to uppercase": "把字符串转成大写",
"Copied": "已复制",
"Copied {{count}} key(s)": "已复制 {{count}} 个密钥",
"Copied channel (source ID: {{sourceId}}) to {{name}} (new ID: {{id}})": "复制渠道(源 ID: {{sourceId}})为 {{name}}(新 ID: {{id}}",
"Copied to clipboard": "已复制到剪贴板",
"Copied: {{model}}": "已复制: {{model}}",
"Copied!": "已复制!",
@@ -1010,7 +1026,16 @@
"Create your first group to reuse model, tag, or endpoint selections anywhere in the dashboard.": "创建您的第一个分组,以便在仪表板的任何位置重用模型、标签或端点选择。",
"Create, revoke, and audit API tokens.": "创建、撤销和审计 API 令牌。",
"Created": "创建时间",
"Created {{count}} redemption codes named {{name}} ({{quota}} each)": "创建 {{count}} 个兑换码 {{name}}(每个 {{quota}}",
"Created a custom OAuth provider": "创建了一个自定义 OAuth 提供方",
"Created a deployment": "创建了一个部署",
"Created a model": "创建了一个模型",
"Created a prefill group": "创建了一个预填组",
"Created a subscription plan": "创建了一个订阅计划",
"Created a vendor": "创建了一个供应商",
"Created At": "创建时间",
"Created channel {{name}} (type {{type}}, count {{count}})": "创建渠道 {{name}}(类型 {{type}},数量 {{count}}",
"Created user {{username}} (role {{role}})": "创建用户 {{username}}(角色 {{role}}",
"Creates a Pancake product in the saved store using this plans title and price. Requires Waffo Pancake to be fully configured in Payment settings first.": "使用此套餐的标题和价格,在已保存的店铺中创建 Pancake 产品。需要先在支付设置中完整配置 Waffo Pancake。",
"Creating...": "创建中...",
"Creation failed": "创建失败",
@@ -1090,6 +1115,7 @@
"Day of month": "日期(日)",
"days": "天",
"Days to Retain": "保留天数",
"Decreased user quota by {{quota}}": "减少用户额度 {{quota}}",
"Deducted by subscription": "由订阅抵扣",
"DeepSeek": "DeepSeek",
"default": "默认",
@@ -1144,7 +1170,18 @@
"Delete selected channels": "删除所选渠道",
"Delete selected models": "删除选定的模型",
"Deleted": "已注销",
"Deleted a custom OAuth provider": "删除了一个自定义 OAuth 提供方",
"Deleted a deployment": "删除了一个部署",
"Deleted a model": "删除了一个模型",
"Deleted a passkey": "解绑了一个 Passkey",
"Deleted a prefill group": "删除了一个预填组",
"Deleted a redemption code": "删除了一个兑换码",
"Deleted a vendor": "删除了一个供应商",
"Deleted all disabled channels ({{count}})": "删除全部禁用渠道({{count}}",
"Deleted channel {{name}} (ID: {{id}})": "删除渠道 {{name}}ID: {{id}}",
"Deleted invalid redemption codes": "删除无效兑换码",
"Deleted successfully": "删除成功",
"Deleted user {{username}} (ID: {{id}})": "删除用户 {{username}}ID: {{id}}",
"Deleting will permanently remove this subscription record (including benefit details). Continue?": "删除会彻底移除该订阅记录(含权益明细)。是否继续?",
"Deleting...": "删除中...",
"Demo site": "演示站点",
@@ -1200,6 +1237,7 @@
"disabled": "已禁用",
"Disabled": "已禁用",
"Disabled all channels with tag: {{tag}}": "已禁用标签「{{tag}}」下的所有渠道",
"Disabled channels with tag {{tag}}": "禁用标签为 {{tag}} 的渠道",
"Disabled lanes are omitted on save.": "关闭的价格通道保存时会被省略。",
"Disabled Reason": "禁用原因",
"Disabled Time": "禁用时间",
@@ -1346,6 +1384,7 @@
"Edit Uptime Kuma Group": "编辑 Uptime Kuma 分组",
"Edit Vendor": "编辑供应商",
"edit_this": "edit_this",
"Edited channels with tag {{tag}}": "编辑标签为 {{tag}} 的渠道",
"Editor mode": "编辑器模式",
"Education": "教育",
"Email": "邮箱",
@@ -1404,6 +1443,7 @@
"Enable when proxying workers that fetch images over HTTP.": "当代理通过 HTTP 获取图像的 worker 时启用。",
"Enabled": "已启用",
"Enabled all channels with tag: {{tag}}": "已启用标签「{{tag}}」下的所有渠道",
"Enabled channels with tag {{tag}}": "启用标签为 {{tag}} 的渠道",
"Enabled Status": "启用状态",
"Enabling...": "正在启用...",
"Encourages introducing new topics": "鼓励引入新话题",
@@ -1528,8 +1568,8 @@
"Exists": "存在",
"Expand": "展开",
"Expand All": "全部展开",
"Expected a JSON array.": "应为 JSON 数组。",
"Expected a JSON array of group identifiers": "应为分组标识符的 JSON 数组",
"Expected a JSON array.": "应为 JSON 数组。",
"Experiment with prompts and models in real time.": "实时实验提示词和模型。",
"Expiration Time": "过期时间",
"expired": "已过期",
@@ -1786,6 +1826,7 @@
"Force format response to OpenAI standard (OpenAI channel only)": "强制将响应格式化为 OpenAI 标准(仅限 OpenAI 渠道)",
"Force JSON object or schema-conforming output": "强制输出 JSON 对象或符合 Schema 的结果",
"Force SMTP authentication using AUTH LOGIN method": "强制使用 AUTH LOGIN 方法进行 SMTP 认证",
"Force-disabled two-factor authentication for the user": "强制关闭了用户的两步验证",
"Forest Whisper": "森林低语",
"Forgot password": "忘记密码",
"Forgot password?": "忘记密码?",
@@ -2024,6 +2065,7 @@
"Include Rule Name": "包含规则名",
"Includes request rules": "包含请求规则",
"Including failed requests, 0 = unlimited": "包括失败的请求,0 = 无限制",
"Increased user quota by {{quota}}": "增加用户额度 {{quota}}",
"Index": "索引",
"Initial quota given to new users": "授予新用户的初始配额",
"Initialization failed, please try again.": "初始化失败,请重试。",
@@ -2226,8 +2268,12 @@
"Log IP address for usage and error logs": "记录用于使用和错误日志的 IP 地址",
"Log Maintenance": "日志维护",
"Log Type": "日志类型",
"Logged in successfully via {{method}}": "登录成功(通过 {{method}}",
"Logic": "逻辑",
"Login": "登录",
"Login failed": "登录失败",
"Login Info": "登录信息",
"Login Method": "登录方式",
"Logo": "徽标",
"Logo URL": "徽标 URL",
"Logs": "日志",
@@ -2433,6 +2479,7 @@
"ms": "毫秒",
"Multi-key channel: Keys will be": "多密钥渠道:密钥将",
"Multi-Key Management": "多密钥管理",
"Multi-key management {{action}} on channel (ID: {{id}})": "对渠道(ID: {{id}})执行多密钥管理操作 {{action}}",
"Multi-Key Mode (multiple keys, one channel)": "多密钥模式(多个密钥,一个渠道)",
"Multi-Key Strategy": "多密钥策略",
"Multi-key: Polling rotation": "多密钥:轮询",
@@ -2748,6 +2795,7 @@
"opens in an external client. Trigger it from the sidebar or API key actions to launch the configured application.": "在外部客户端中打开。从侧边栏或 API 密钥操作中触发,以启动配置的应用。",
"Operation": "操作",
"operation and charging behavior": "运营和收费行为",
"Operation Audit Info": "操作审计信息",
"Operation failed": "操作失败",
"Operation successful": "操作成功",
"Operation Type": "操作类型",
@@ -2799,6 +2847,7 @@
"Override Rules": "覆盖规则",
"Override the endpoint used for testing. Leave empty to auto detect.": "覆盖用于测试的端点。留空以自动检测。",
"overrides for matching model prefix.": "为匹配模型前缀的覆盖价。",
"Overrode user quota from {{from}} to {{to}}": "覆盖用户额度,从 {{from}} 改为 {{to}}",
"Overview": "概览",
"Overwritten": "已覆盖",
"Page": "页面",
@@ -2912,6 +2961,7 @@
"Performance metrics shown here are simulated for preview purposes and will be replaced with live observability data once the backend integration is complete.": "此处展示的性能指标为预览模拟数据,待后端对接完成后将替换为真实可观测数据。",
"Performance Monitor": "性能监控",
"Performance Settings": "性能设置",
"Performed {{action}} on user {{username}} (ID: {{id}})": "对用户 {{username}}ID: {{id}})执行 {{action}}",
"Period": "时间范围",
"Periodically check for upstream model changes": "定期检查上游模型是否有变更",
"Periodically send ping frames to keep streaming connections active.": "定期发送 ping 帧以保持流连接处于活动状态。",
@@ -3248,6 +3298,7 @@
"Regex Replace": "正则替换",
"Register each URL into the matching Test Mode / Production Mode webhook slot in the Pancake dashboard. Separate endpoints prevent test traffic from accidentally crediting production accounts.": "请在 Pancake 控制台中将每个 URL 注册到对应的测试模式/生产模式 webhook 槽位。分离端点可以避免测试流量误入生产账户。",
"Register Passkey": "注册 Passkey",
"Registered a passkey": "注册了一个 Passkey",
"Registration Enabled": "注册已启用",
"Registry (optional)": "注册表 (可选)",
"Registry secret": "注册表密钥",
@@ -3283,6 +3334,7 @@
"Remove tier": "移除档位",
"Removed": "已移除",
"Removed {{removed}} duplicate key(s). Before: {{before}}, After: {{after}}": "已移除 {{removed}} 个重复密钥。移除前:{{before}},移除后:{{after}}",
"Removed an OAuth binding for the user": "解除了用户的一个 OAuth 绑定",
"Removed Models ({{count}})": "已移除模型 ({{count}})",
"Removes Midjourney flags such as --fast, --relax, and --turbo from user prompts.": "从用户提示中移除 Midjourney 参数,如 --fast、--relax 和 --turbo。",
"Removing Passkey will require you to sign in with your password next time. You can re-register anytime.": "移除通行密钥后,您下次将需要使用密码登录。您可以随时重新注册。",
@@ -3354,12 +3406,14 @@
"Reset Cycle": "重置周期",
"Reset email sent, please check your inbox": "重置邮件已发送,请检查您的收件箱",
"Reset failed": "重置失败",
"Reset model ratios": "重置模型倍率",
"Reset Passkey": "重置 Passkey",
"Reset password": "重置密码",
"Reset Period": "重置周期",
"Reset prices": "重置价格",
"Reset ratios": "重置比例",
"Reset Stats": "重置统计",
"Reset the user passkey": "重置了用户的通行密钥",
"Reset to default": "重置为默认",
"Reset to Default": "重置为默认",
"Reset to default configuration": "已重置为默认配置",
@@ -3372,6 +3426,7 @@
"Responses API Version": "响应 API 版本",
"Restore defaults": "恢复默认",
"Restrict user model request frequency (may impact high concurrency performance)": "限制用户模型请求频率(可能会影响高并发性能)",
"Result": "结果",
"Retain last N days": "保留最近N天",
"Retain last N files": "保留最近 N 个文件",
"Retention days": "保留天数",
@@ -3635,6 +3690,7 @@
"Set tag for selected channels": "为选定的渠道设置标签",
"Set the language used across the interface": "设置界面显示语言",
"Set the user's role (cannot be Root)": "设置用户角色(不能是 Root",
"Setting Key": "配置项",
"Setting saved": "设置已保存",
"Setting up 2FA...": "正在设置 2FA...",
"Setting updated successfully": "设置更新成功",
@@ -3827,6 +3883,7 @@
"Sync this model with official upstream": "将此模型与官方上游同步",
"Sync Upstream": "同步上游",
"Sync Upstream Models": "同步上游模型",
"Synced upstream models": "同步上游模型",
"Synchronize models and vendors from an upstream source": "从上游源同步模型和供应商",
"Syncing prices, please wait...": "正在同步价格,请稍候...",
"Syncing...": "同步中...",
@@ -3872,6 +3929,7 @@
"Target group": "目标分组",
"Target Header": "目标请求头",
"Target Path (optional)": "目标路径(可选)",
"Target User": "目标用户",
"Task": "任务",
"Task ID": "任务 ID",
"Task ID:": "任务 ID",
@@ -4127,6 +4185,7 @@
"Trend": "趋势",
"Trending down": "下降趋势",
"Trending up": "上升趋势",
"Triggered garbage collection": "触发垃圾回收",
"Trim leading/trailing whitespace": "去掉字符串头尾空白",
"Trim Prefix": "裁剪前缀",
"Trim Space": "去掉空白",
@@ -4217,8 +4276,18 @@
"Update your password for account:": "更新账户密码:",
"Update your password to keep your account secure": "更新您的密码以确保账户安全",
"Updated": "更新时间",
"Updated a custom OAuth provider": "更新了一个自定义 OAuth 提供方",
"Updated a deployment": "更新了一个部署",
"Updated a model": "更新了一个模型",
"Updated a prefill group": "更新了一个预填组",
"Updated a redemption code": "更新了一个兑换码",
"Updated a subscription plan": "更新了一个订阅计划",
"Updated a vendor": "更新了一个供应商",
"Updated channel {{name}} (ID: {{id}})": "更新渠道 {{name}}ID: {{id}}",
"Updated daily": "每日更新",
"Updated successfully": "更新成功",
"Updated system setting {{key}}": "修改系统设置 {{key}}",
"Updated user {{username}} (ID: {{id}})": "更新用户 {{username}}ID: {{id}}",
"Updating all channel balances. This may take a while. Please refresh to see results.": "正在更新所有渠道余额。这可能需要一段时间。请刷新以查看结果。",
"Upgrade Group": "升级分组",
"Upload": "上传",
@@ -4290,6 +4359,7 @@
"Used:": "已使用:",
"User": "用户",
"User {{id}}": "用户 {{id}}",
"User Agent": "用户代理",
"User Agreement": "用户协议",
"User Analytics": "用户统计",
"User Consumption Ranking": "用户消耗排行",
@@ -4384,6 +4454,7 @@
"View the complete prompt and its English translation": "查看完整提示词及其英文翻译",
"View the generated image": "查看生成的图片",
"View your topup transaction records and payment history": "查看您的充值交易记录和付款历史",
"Viewed channel key {{name}} (ID: {{id}})": "查看渠道密钥 {{name}}ID: {{id}}",
"Violation Code": "违规代码",
"Violation deduction amount": "违规扣费金额",
"Violation Fee": "违规扣费",