singer tap-zendesk - 如何从发现模式中使用 selected:True 提取 catalog.json

singer tap-zendesk - how to extract catalog.json with selected:True from discovery mode

我正在使用 singer 的 tap-zendesk 库并希望从特定模式中提取数据。

我在同步模式下运行以下命令:

tap-zendesk --config config.json --catalog catalog.json.

目前我的 config.json 文件有以下参数:

{
    "email": "<email>",
    "api_token": "<token>",
    "subdomain": "<domain>",
    "start_date": "<start_date>"
  }

我设法通过将 'selected':true 放在 schemaproperties 下来提取数据 元数据 在 catalog.json 文件中。但我想知道是否有更简单的方法来做到这一点?我需要经过大约 15 个流。

我设法通过发现模式命令获取 catalog.json 文件:

tap-zendesk --config config.json --discover > catalog.json

输出如下所示,但这意味着我必须在每个字段下添加 selected:True。

{
  "streams": [
    {
      "stream": "tickets",
      "tap_stream_id": "tickets",
      "schema": {
        **"selected": "true"**,
        "properties": {
          "organization_id": {
            **"selected": "true"**,},
      "metadata": [
        {
          "breadcrumb": [],
          "metadata": {
            **"selected": "true"**

}

每个流只需应用 selected=true 一次。这需要添加到 breadcrumbs = [] 流下的元数据部分。这是非常少的记录。

请参阅此博客 post 了解一些有用的详细信息:https://medium.com/getting-started-guides/extracting-ticket-data-from-zendesk-using-singer-io-tap-zendesk-57a8da8c3477