跳到主要内容

创建 Postman 模拟服务器

本指南将说明如何使用提供的 Postman 示例文件,在本地模拟 Datadog 日志摄入应用程序接口 (API)。您可以验证请求格式、测试错误响应,并按照动手指南中的示例进行操作,而无需将数据发送至真实的 Datadog 账户。

先决条件

  • Postman(桌面版或 Web 版)。

  • 本项目包含三个 JSON 文件:

    文件用途
    DataPipeline-Environment.json定义可重用变量:dd_sitemock_base_urldd_api_key
    DataPipeline-postman-collection.json向 Datadog 日志采集 API(/api/v2/logs)发送真实请求。
    DataPipeline-MockServer-Collection.json使用 Postman 模拟服务器为相同端点配置模拟响应。

下载这三个文件: 下载 Postman 文件

1. 将文件导入 Postman

  1. 打开 Postman 并点击 导入
  2. 一次性选中所有三个已下载的 JSON 文件。
  3. 从右上角的环境菜单中,选择 数据管道环境

导入文件后,将显示以下项目:

  • 数据管道文档项目(真实 API 集合)。
  • 数据管道 — 模拟服务器集合
  • 数据管道环境

2. 创建模拟服务器

  1. 在 Postman 中,转到左侧边栏的 模拟服务器
  2. 点击 创建模拟服务器
  3. 选择 数据管道 — 模拟服务器集合
  4. 保留默认设置并点击 创建模拟服务器

Postman 将生成一个唯一的模拟服务器地址,例如: https://a12b34cd-1234-5678.mock.pstmn.io

3. 更新环境变量

  1. 转到 环境 > 数据管道环境
  2. 找到 mock_base_url 变量。
  3. 将占位符替换为您生成的模拟服务器地址:
# 修改前
https://mock-server-url-from-postman.io

# 修改后
https://a12b34cd-1234-5678.mock.pstmn.io
  1. 保存环境设置。

4. 发送首个模拟请求

  1. 模拟服务器集合 中打开 POST /api/v2/logs
  2. 确认右上角菜单中的 数据管道环境 处于活动状态。
  3. 点击 发送

模拟服务器将返回一个模拟的 202 Accepted 响应,与真实的 Datadog 响应一致: HTTP/1.1 202 Accepted

注意: 真实的 Datadog 日志摄入 API 返回的 202 Accepted 响应中不包含 响应正文。为了便于测试时阅读,模拟集合返回了一个简化的 JSON 对象:

{
"status": "accepted",
"message": "Log event received by mock server."
}

5. 测试错误响应

要测试 400 Bad Request 响应,请从请求 正文中移除 message 字段。该字段在 Datadog 日志摄入 API 中是必填的。

模拟服务器返回以下 JSON:

{
"errors": ["Invalid JSON"]
}

您还可以通过从请求中移除 DD-API-KEY 标头 来测试 401 Unauthorized 响应。

6. 在真实测试与模拟测试之间切换

这两个收集器使用相同的环境文件。要在真实测试和模拟测试之间 切换,请更改所使用的收集器:

目标收集器基础地址变量
使用真实 Datadog 进行测试DataPipeline-postman-collection.json{{dd_site}}datadoghq.com
本地或离线测试DataPipeline-MockServer-Collection.json{{mock_base_url}} → 您的模拟地址

此方法可让您在向 Datadog 账户发送实时数据之前, 验证请求和响应格式。

可视化请求流程

Postman 模拟服务器请求流程

为何这很重要

此模拟服务器设置演示了您在 开发或文档化真实 API 集成时所使用的相同验证模式:

  • 验证请求结构及必需的头部(DD-API-KEYContent-Type),确保在发送实际流量前一切无误。
  • 确认 JSON 有效载荷符合预期模式——即包含 message 字段的日志对象数组。
  • 测试错误处理400401429),且不会消耗 API 配额或污染生产环境日志索引。
  • 基于稳定且可复现的端点开发并验证文档示例。

在编写 Galileo 软件开发工具包 (SDK) 文档时,同样适用这一模式。您应在 dev 日志流中测试已插桩的 函数,然后再将其部署到 production 环境,确保在真实用户流量通过之前正确配置了评估 指标。