Hello, I am new to Meltano, trying to looking for ...
# singer-taps
d
Hello, I am new to Meltano, trying to looking for alternatives for ETL tools I have this meltano.yml
Copy code
version: 1
default_environment: prod
project_id: 98dec0e3-6278-42e8-bcb8-8f1f18c72dcb
environments:
- name: dev
- name: staging
- name: prod
  config:
    plugins:
      extractors:
      - name: tap-mongodb
        config:
          mongodb_connection_string:
            <mongodb://user:password@172.16.0.242:22017/collection?authSource=admin>
          database: indorelawan
      loaders:
      - name: target-postgres
        config:
          database: meltano
          user: meltano
          host: 172.16.0.248
          add_record_metadata: true
          port: 5433
plugins:
  extractors:
  - name: tap-mongodb
    variant: meltanolabs
    pip_url: git+<https://github.com/MeltanoLabs/tap-mongodb.git>
    metadata:
      "*":
        replication-method: "INCREMENTAL"
        replication-key: "_id"
  loaders:
  - name: target-postgres
    variant: meltanolabs
    pip_url: meltanolabs-target-postgres
When I run
meltano --environment=prod run tap-mongodb target-postgres
, I got
Copy code
TypeError: Value after * must be an iterable, not Logger cmd_type=elb consumer=False job_name=prod:tap-mongodb-to-target-postgres name=tap-mongodb producer=True run_id=54cdd660-d0e4-4269-ae94-8860113e38cd stdio=stderr string_id=tap-mongodb
Any ideas why?
v
We need more content, normally you'd have a stack trace too, that error is coming from mongodb, I'd look into the stack trace and then find why tap-mongo is angry about something. Not a nice error message by any means
To debug yourself and have a little less logging you could call the tap directly
meltano invoke tap-name
e
I think I know where this is coming from
In short this would've been caught by type checking
(or integration tests)
Ok, should be good after reinstalling the tap with
meltano install extractor tap-mongodb --clean