---
id: log-rule-001
name: "工具调用审计规则"
description: "记录所有工具调用用于审计和监控"
version: "1.0.0"
author: "Audit Team"

# 触发条件
trigger:
  type: "on_tool_call"
  conditions: []
  scope: "global"

# 优先级和冲突解决
priority: 10  # 低优先级，不影响执行
conflict_resolution: "log"

# 执行动作
steps:
  - type: "log"
    name: "记录工具调用"
    logLevel: "info"
    messageTemplate: "工具调用: {{tool.name}} 参数: {{tool.args}} 用户: {{user.id}} 时间: {{timestamp}}"
    fields:
      - "tool.name"
      - "tool.args"
      - "user.id"
      - "session.id"
      - "timestamp"

# 验证条件
conditions: []

# 变量和上下文
variables:
  audit_enabled: true
  retention_period: "90d"

# 日志和监控
logging:
  level: "info"
  notify: ["audit-log"]
  retention_days: 90
---

# 工具调用审计规则

## 规则说明

此规则记录所有工具调用，用于系统审计、性能监控和故障排查。

## 记录字段

1. **工具名称**: 被调用的工具名称
2. **调用参数**: 工具调用的参数（敏感信息会被过滤）
3. **用户信息**: 发起调用的用户标识
4. **会话信息**: 当前会话标识
5. **时间戳**: 调用发生的时间
6. **执行结果**: 工具执行的结果状态

## 隐私保护

为保护用户隐私和安全，以下信息会被过滤：
- 密码、令牌等认证信息
- 个人身份信息（PII）
- 敏感业务数据

## 存储策略

审计日志会保留90天，之后自动归档或删除。紧急情况下可以延长保留期。

## 使用场景

1. **安全审计**: 检测异常工具调用模式
2. **故障排查**: 分析系统问题和错误
3. **性能监控**: 跟踪工具执行时间和频率
4. **合规检查**: 满足监管和合规要求

## 相关规则

- 隐私保护规则
- 数据保留规则
- 异常检测规则