You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用DBMS_CLOUD.SEND_REQUEST遇PLS-00306参数错误,求排查建议

问题

尝试通过DBMS_CLOUD.SEND_REQUEST函数将OCI自治数据库中的审计日志数据发送至OCI控制台创建的日志服务,执行以下PL/SQL代码:

DECLARE
  log_endpoint VARCHAR2(4000);
  log_body CLOB;
  CURSOR audit_cursor IS
    SELECT EVENT_TIMESTAMP, DBUSERNAME, ACTION_NAME, RETURN_CODE 
    FROM UNIFIED_AUDIT_TRAIL
    WHERE EVENT_TIMESTAMP > SYSTIMESTAMP - INTERVAL '1' DAY;
BEGIN
  log_endpoint := 'https://logging.eu-frankfurt-1.oci.oraclecloud.com/20200531/logs/ocid1.log.oc1.eu-frankfurt-1.mysecretocid';
  FOR rec IN audit_cursor LOOP
    log_body := '{
      "specversion": "1.0",
      "source": "autonomous-database",
      "eventType": "db-audit-log",
      "data": {
        "timestamp": "' || TO_CHAR(rec.EVENT_TIMESTAMP, 'YYYY-MM-DD"T"HH24:MI:SS"Z"') || '",
        "dbusername": "' || rec.DBUSERNAME || '",
        "action": "' || rec.ACTION_NAME || '",
        "status": "' || CASE WHEN rec.RETURN_CODE = 0 THEN 'SUCCESS' ELSE 'FAILURE' END || '"
      }
    }';
    DBMS_CLOUD.SEND_REQUEST(
      credential_name => 'MY_CRED',
      uri             => log_endpoint,
      method          => DBMS_CLOUD.METHOD_POST,
      body            => log_body
    );
  END LOOP;
END;
/

已创建该函数所需的凭据,但执行时出现以下错误:

ERROR at line 29:
ORA-06550: line 29, column 5:
PLS-00306: wrong number or types of arguments in call to 'SEND_REQUEST'
ORA-06550: line 29, column 5:
PL/SQL: Statement ignored

对照Oracle文档,DBMS_CLOUD.SEND_REQUEST的参数定义无问题,请求提供排查建议。

排查建议
  • 检查参数兼容性与拼写:不同Oracle自治数据库版本的DBMS_CLOUD.SEND_REQUEST参数可能存在差异,确认当前数据库版本的官方参数定义。尝试按文档指定的参数顺序传递(而非命名参数方式),排查是否因版本差异导致参数匹配失败。
  • 验证body参数类型:虽然代码中log_body定义为CLOB,部分版本的SEND_REQUEST对body类型支持有限。尝试将log_body转换为VARCHAR2(确保内容长度不超过限制)后传入,或使用DBMS_LOB包处理CLOB参数,排查类型转换问题。
  • 确认凭据有效性:检查MY_CRED凭据的权限是否允许访问目标日志服务端点,确认凭据配置的OCI密钥、租户ID等信息正确。可先通过极简GET请求测试端点连通性,验证凭据是否可用。
  • 校验端点URL格式:OCI日志服务的Ingest API端点需符合官方规范,检查URL中的OCID是否完整,是否遗漏日志组等必要路径参数,确认URL格式与OCI文档要求一致。
  • 测试简化调用:编写极简的SEND_REQUEST调用(仅传递必要参数和简单JSON body),排除循环和复杂数据拼接的干扰,确认基础调用是否正常,逐步定位问题根源。

内容的提问来源于stack exchange,提问作者gurbelunder

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 12:55:12