jake_jackson
03/11/2022, 8:53 PMversion: 1
send_anonymous_usage_stats: true
project_id: 7c2647e3-78bf-4c06-bebd-9d6cd5a05904
plugins:
extractors:
- name: tap-airtable
namespace: tap_airtable
pip_url: git+<https://github.com/goes-funky/tap-airtable.git>
executable: tap-airtable
loaders:
- name: target-bigquery
variant: adswerve
pip_url: git+<https://github.com/adswerve/target-bigquery.git@0.11.3>
environments:
- name: dev
config:
plugins:
extractors:
- name: tap-airtable
config:
metadata_url: <https://api.airtable.com/v2/meta/>
records_url: <https://api.airtable.com/v0>
select_by_default: true
remove_emojis: false
base_id: app0Ie9bbcFynqxOY
loaders:
- name: target-bigquery
config:
project_id: core-data-stack
dataset_id: tap_airtable2
- name: staging
- name: prod
This tells me (even after adding the token config to tap-airtable) that the token key can’t be found. I moved the config into the “plugins” section and that made it recognize the config variables, and that gives me this successful output, but it’s not actually moving any data; it’s just creating an empty dataset in the bigquery.
2022-03-11T14:08:18.171618Z [info ] Running extract & load... job_id=airtable-to-bigquery name=meltano run_id=a2442ffa-1271-4bb8-bb1b-cb222dd727bf
2022-03-11T14:08:18.952617Z [info ] INFO Pushing state: {} cmd_type=loader job_id=airtable-to-bigquery name=target-bigquery run_id=a2442ffa-1271-4bb8-bb1b-cb222dd727bf stdio=stderr
2022-03-11T14:08:18.964065Z [info ] Incremental state has been updated at 2022-03-11 14:08:18.963820.
2022-03-11T14:08:19.015530Z [info ] Extract & load complete! job_id=airtable-to-bigquery name=meltano run_id=a2442ffa-1271-4bb8-bb1b-cb222dd727bf
2022-03-11T14:08:19.015736Z [info ] Transformation skipped. job_id=airtable-to-bigquery name=meltano run_id=a2442ffa-1271-4bb8-bb1b-cb222dd727bf
2022-03-11T14:08:19.139882Z [info ] Emitter initialized with endpoint <http://sp.meltano.com/i>
2022-03-11T14:08:19.255666Z [info ] Attempting to send 1 events
2022-03-11T14:08:19.255861Z [info ] Sending GET request to <http://sp.meltano.com/i>...
2022-03-11T14:08:20.172190Z [info ] GET request finished with status code: 200
I’ve tried copying the output of “tap-airtable --config config.json --discover” to a “catalog” field in the yaml but still no difference.
Also, when I run
meltano select tap-airtable --list --all"
… I get the error:
Cannot list the selected attributes: Could not find catalog. Verify that the tap supports discovery mode and advertises the `discover` capability as well as either `catalog` or `properties`
visch
03/11/2022, 9:07 PMcapabilities:
- catalog
- discover
Could you bump this issue if you have a gitlab account (thumbs up) https://gitlab.com/meltano/hub/-/issues/161visch
03/11/2022, 9:08 PMselect: - **.**
xinge_li
03/12/2022, 9:43 PMxinge_li
03/12/2022, 10:22 PMselect: - table_name.*
edgar_ramirez_mondragon
03/13/2022, 1:31 AMcatalog
and discover
capabilities?xinge_li
03/13/2022, 8:27 AMvisch
03/13/2022, 12:34 PMxinge_li
03/14/2022, 8:30 PM- name: tap-airtable
namespace: tap_airtable
pip_url: git+<https://github.com/goes-funky/tap-airtable.git>
executable: tap-airtable
capabilities:
- catalog
- discover
config:
metadata_url: <https://api.airtable.com/v2/meta/>
records_url: <https://api.airtable.com/v0/>
token: $AIRTABLE_TOKEN
base_id: $base_id
selected_by_default: true
remove_emojis: true
default_replication_method: INCREMENTAL
select:
- table_name.*
xinge_li
03/14/2022, 8:32 PM2022-03-12T22:23:17.664930Z [info ] Running extract & load... job_id=2022-03-12T222315--tap-airtable--target-postgres--airtable name=meltano run_id=e4c88362-2c7f-4a44-92fc-067a04dca422
2022-03-12T22:23:20.323409Z [info ] Extract & load complete! job_id=2022-03-12T222315--tap-airtable--target-postgres--airtable name=meltano run_id=e4c88362-2c7f-4a44-92fc-067a04dca422
2022-03-12T22:23:20.323875Z [info ] Transformation skipped. job_id=2022-03-12T222315--tap-airtable--target-postgres--airtable name=meltano run_id=e4c88362-2c7f-4a44-92fc-067a04dca422
visch
03/14/2022, 9:18 PMselect:
- *.*
visch
03/14/2022, 9:19 PMmetadata:
'*':
replication-method: FULL_TABLE
visch
03/14/2022, 9:20 PMxinge_li
03/14/2022, 9:30 PMxinge_li
03/14/2022, 9:32 PM- *.*
Did not work, and it has an error of:
while scanning an alias
in "meltano.yml", line 147, column 7
expected alphabetic or numeric character, but found '.'
in "meltano.yml", line 147, column 8
xinge_li
03/14/2022, 9:34 PMxinge_li
03/14/2022, 10:02 PM--log-level debug
it seems like the tables are skipped which I don’t know why:
2022-03-14T22:00:36.720253Z [info ] INFO discover base BASE_ID name=tap-airtable stdio=stderr type=discovery
2022-03-14T22:00:37.352486Z [info ] name=tap-airtable stdio=stderr type=discovery
2022-03-14T22:00:37.356984Z [debug ] Visiting CatalogNode.STREAM at '.streams[0]'.
2022-03-14T22:00:37.357500Z [debug ] Setting '.streams[0].selected' to 'False'
2022-03-14T22:00:37.357637Z [debug ] Setting '.streams[0].selected' to 'True'
2022-03-14T22:00:37.357795Z [debug ] Skipping node at '.streams[0].tap_stream_id'
2022-03-14T22:00:37.357914Z [debug ] Skipping node at '.streams[0].database_name'
2022-03-14T22:00:37.358022Z [debug ] Skipping node at '.streams[0].table_name'
2022-03-14T22:00:37.358137Z [debug ] Skipping node at '.streams[0].key_properties[0]'
2022-03-14T22:00:37.358281Z [debug ] Visiting CatalogNode.PROPERTY at '.streams[0].schema.properties.id'.
2022-03-14T22:00:37.358413Z [debug ] Skipping node at '.streams[0].schema.properties.id.inclusion'
2022-03-14T22:00:37.358534Z [debug ] Visiting CatalogNode.PROPERTY at '.streams[0].schema.properties.Autonumber'.
2022-03-14T22:00:37.358655Z [debug ] Skipping node at '.streams[0].schema.properties.Autonumber.inclusion'
2022-03-14T22:00:37.358776Z [debug ] Skipping node at '.streams[0].schema.properties.Signup date.inclusion'
2022-03-14T22:00:37.358893Z [debug ] Skipping node at '.streams[0].schema.properties.Signup date.type[0]'
2022-03-14T22:00:37.359037Z [debug ] Skipping node at '.streams[0].schema.properties.Signup date.type[1]'
2022-03-14T22:00:37.359148Z [debug ] Skipping node at '.streams[0].schema.properties.Claim ID.inclusion'
2022-03-14T22:00:37.359251Z [debug ] Skipping node at '.streams[0].schema.properties.Claim ID.type[0]'
2022-03-14T22:00:37.359350Z [debug ] Skipping node at '.streams[0].schema.properties.Claim ID.type[1]'
...
What could be the reason?visch
03/15/2022, 1:41 AMvisch
03/15/2022, 1:42 AMxinge_li
03/17/2022, 8:51 AMmeltano select --all tap-airtable
, the log still shows the same skipping node message….xinge_li
03/17/2022, 8:54 AMmeltano select tap-airtable --list
, I got:
Legend:
selected
excluded
automatic
Enabled patterns:
*.*
Selected attributes:
[selected ] tbl0AJPrnjs3ojBo9.author
[selected ] tbl0AJPrnjs3ojBo9.case
[selected ] tbl0AJPrnjs3ojBo9.checked
[selected ] tbl0AJPrnjs3ojBo9.createdDate
[selected ] tbl0AJPrnjs3ojBo9.date
[automatic] tbl0AJPrnjs3ojBo9.id
[selected ] tbl0AJPrnjs3ojBo9.message
[selected ] tbl0AJPrnjs3ojBo9.reminderId
[selected ] tbl0AJPrnjs3ojBo9.type
It seems that the tables are selectedxinge_li
03/17/2022, 8:54 AMvisch
03/17/2022, 1:09 PMxinge_li
03/17/2022, 2:28 PMvisch
03/17/2022, 2:30 PMmeltano.yml
as well.
From that log I see `Extract & load complete! job_id=2022-03-17T141958--tap-airtable--target-postgres--airtable name=meltano run_id=b0a52a63-2ff4-4be2-b945-ce89818dd462
For fun you could try a different job_id just to see if maybe it's state messing this up (not clear to me this is what's happening)xinge_li
03/17/2022, 2:53 PMxinge_li
03/17/2022, 2:54 PM- name: tap-airtable
namespace: tap_airtable
pip_url: git+<https://github.com/goes-funky/tap-airtable.git>
executable: tap-airtable
capabilities:
- catalog
- discover
config:
metadata_url: <https://api.airtable.com/v2/meta/>
records_url: <https://api.airtable.com/v0/>
token: $AIRTABLE_TOKEN
base_id: appmmCT4fEgPEjMt6
selected_by_default: true
remove_emojis: true
select:
- '*.*'
- name: target-postgres--airtable
inherit_from: target-postgres
config:
host: $LOADER_PG_ADDRESS_A
port: $LOADER_PG_PORT_A
dbname: $LOADER_PG_DATABASE_A
user: $LOADER_PG_USERNAME_A
password: $LOADER_PG_PASSWORD_A
default_target_schema: airtable
xinge_li
03/17/2022, 3:08 PMvisch
03/17/2022, 3:10 PMvisch
03/17/2022, 3:11 PMvisch
03/17/2022, 3:11 PMtap-airtable -c config.json --properties properties.json
clued me in from the readmevisch
03/17/2022, 3:11 PMcapabilities:
- catalog
- discover
To
capabilities:
- properties
- discover
visch
03/17/2022, 3:15 PMvisch
03/17/2022, 3:16 PMxinge_li
03/17/2022, 3:19 PMxinge_li
03/17/2022, 3:24 PMxinge_li
03/17/2022, 3:36 PMxinge_li
03/17/2022, 4:09 PMvisch
03/17/2022, 4:41 PMvisch
03/17/2022, 4:41 PMxinge_li
03/17/2022, 4:44 PMvisch
03/17/2022, 4:44 PM2022-03-17T15:35:16.226426Z [info ] File "/Users/xingeli/data-pipeline/.meltano/extractors/tap-airtable/venv/lib/python3.8/site-packages/tap_airtable/services/__init__.py", line 193, in _find_column cmd_type=extractor job_id=insurello-export-airtable name=tap-airtable run_id=50f77f78-c903-4ff8-be6e-2e49a70a5f11 stdio=stderr
2022-03-17T15:35:16.226736Z [info ] return m["metadata"]["real_name"] cmd_type=extractor job_id=insurello-export-airtable name=tap-airtable run_id=50f77f78-c903-4ff8-be6e-2e49a70a5f11 stdio=stderr
2022-03-17T15:35:16.227610Z [info ] KeyError: 'real_name' cmd_type=extractor job_id=insurello-export-airtable name=tap-airtable run_id=50f77f78-c903-4ff8-be6e-2e49a70a5f11 stdio=stderr
I'd go look at the code at that line and see what's going on. real_name
doesn't exist in metadata
which is probably the catalog. I'd look around at the catalog (dump it) and see what's going on.visch
03/17/2022, 4:45 PMmeltano select --list
and look at everything on the list, maybe just pick one stream that you want instead of all to do some debugging 🤷xinge_li
03/17/2022, 4:47 PM--discover
I figured out the real_name
is basically the naming you put in an airtable, it is kinda weird when it is complaining about not exist, I will try to dump it and see what’s going onxinge_li
03/17/2022, 4:47 PMxinge_li
03/17/2022, 4:57 PMvisch
03/17/2022, 5:01 PMreal_name
isluke_phan
03/29/2022, 4:20 PMreal_name
errors by adding:
if m["metadata"].get("real_name"):
return m["metadata"]["real_name"]
https://github.com/goes-funky/tap-airtable/blob/d97e169c2d34db7163b5db36683e0215b2f0ac1f/tap_airtable/services/__init__.py#L193