thoughtspot / cs_tools

Scale your ThoughtSpot adoption with tools created by the ThoughtSpot Solutions Consulting organization.
https://thoughtspot.github.io/cs_tools/
Other
8 stars 6 forks source link

Cannot sync ThoughtSpot meta data to Snowflake #149

Closed sae-bruce closed 2 months ago

sae-bruce commented 2 months ago

First Stop

Platform Configuration

│ Info snapshot taken on 2024-06-18 │ │ │ │ CS Tools: 1.5.7 │ │ Python Version: Python 3.10.13 | packaged by Anaconda, Inc. | (main, Sep 11 2023, 13:24:38) [MSC v.1916 64 bit (AMD64)] │ │ System Info: Windows (detail: Windows-10-10.0.19044-SP0) │ │ Configs Directory: C:\Users\ {anonymous} \AppData\Roaming\cs_tools │ │ Activate VirtualEnv: C:\Users\ {anonymous} \AppData\Roaming\cs_tools.cs_tools\Scripts\Activate.ps1 │ │ Platform Tags: win-amd64 │ │

Description

I want to sync ThoughtSpot meta data from ThoughtSpot cloud to Snowflake, I used the syncer function of cs_tools, but it returned error.

Following is the command I used and the error returned, I replaced some private info with "...".

C:\Users\m172485>cs_tools tools searchable metadata --config sae_cloud --syncer snowflake://account_name="..."&username="..."&secret="..."&warehouse="TS_ANALYTICS_WH"&role="ACCOUNTADMIN"&database="SAE200"&schema="TS_METADATA"&authentication="basic" [17:49:31] INFO Attempting Basic authentication thoughtspot.py:213 [17:49:45] INFO Initializing syncer: <class 'cs_tools_snowflake_syncer.Snowflake'> syncer.py:50 ┌──────── Your Snowflake Syncer encountered an error. ────────┐ │ │ │ 5 arguments have errors. │ │ │ │ username │ │ x Field required │ │ │ │ warehouse │ │ x Field required │ │ │ │ role │ │ x Field required │ │ │ │ database │ │ x Field required │ │ │ │ authentication │ │ x Field required │ │ │ │ Mitigation │ │ Check the Syncer's documentation page for more information. │ │ https://thoughtspot.github.io/cs_tools/syncer/snowflake/ │ └─────────────────────────────────────────────────────────────┘ 'username' is not recognized as an internal or external command, operable program or batch file. 'secret' is not recognized as an internal or external command, operable program or batch file. 'warehouse' is not recognized as an internal or external command, operable program or batch file. 'role' is not recognized as an internal or external command, operable program or batch file. 'database' is not recognized as an internal or external command, operable program or batch file. LPX-00202: could not open "=TS_METADATA" (error 200) Parse of =TS_METADATA failed, error 202 'authentication' is not recognized as an internal or external command, operable program or batch file.

C:\Users\m172485>

boonhapus commented 2 months ago

Hey @sae-bruce , can you try this version?

cs_tools tools searchable metadata --config sae_cloud --syncer "snowflake://account_name=...&username=...&secret=...&warehouse=TS_ANALYTICS_WH&role=ACCOUNTADMIN&database=SAE200&schema=TS_METADATA&authentication=basic"

On Windows the & sign tells the terminal you're trying to run multiple commands, so we need to quote the syncer argument to tell Windows to treat it as just one string.

sae-bruce commented 2 months ago

Hi @boonhapus , It works, and now it's running, thanks.