Skip to main content

Monte Carlo's CLI

Project description

Monte Carlo CLI

Monte Carlo's Alpha CLI!

Installation

Requires Python 3.9 or greater. Normally you can install and update using pip. For instance:

pip install virtualenv
virtualenv venv
. venv/bin/activate

pip install -U montecarlodata

Developers of the CLI can use:

pip install virtualenv
make install
. venv/bin/activate
pre-commit install

Either way confirm the installation by running:

montecarlo --version

If the Python requirement does not work for you please reach out to support@montecarlodata.com. Docker is an option.

Quick start

First time users can configure the tool by following the onscreen prompts:

montecarlo configure

MCD tokens can be generated from the dashboard.

Use the --help flag for details on any advanced options (e.g. creating multiple montecarlo profiles) or see docs here.

That's it! You can always validate your connection with:

montecarlo validate

User settings

Any configuration set by montecarlo configure can be found in ~/.mcd/ by default.

The MCD ID and Token can be overwritten, or even set, by the environment:

  • MCD_DEFAULT_API_ID
  • MCD_DEFAULT_API_TOKEN

These two are required either as part of configure or as environment variables.

The following values can also be set by the environment:

  • MCD_API_ENDPOINT - Overwrite the default API endpoint
  • MCD_VERBOSE_ERRORS - Enable verbose logging on errors (default=false)

Help

Documentation for commands, options, and arguments can be found here.

You can also use montecarlo help to echo all help text or use the --help flag on any command.

Examples

Using Docker from a local installation

docker build -t montecarlo .
docker run -e MCD_DEFAULT_API_ID='<ID>' -e MCD_DEFAULT_API_TOKEN='<TOKEN>' montecarlo --version

Replace --version with any sub-commands or options. If interacting with files those directories will probably need to be mounted too.

Configure a named profile with custom config-path

$ montecarlo configure --profile-name zeus --config-path .
Key ID: 1234
Secret:

$ cat ./profiles.ini
[zeus]
mcd_id = 1234
mcd_token = 5678

List active integrations

$ montecarlo integrations list
╒══════════════════╤══════════════════════════════════════╤══════════════════════════════════╕
│ Integration       ID                                    Created on (UTC)                 │
╞══════════════════╪══════════════════════════════════════╪══════════════════════════════════╡
│ Odin              58005657-2914-4701-9a11-260ac425b14e  2021-01-02T01:30:52.806602+00:00 │
├──────────────────┼──────────────────────────────────────┼──────────────────────────────────┤
│ Thor              926816bd-ab17-4f95-a953-fa14482c59de  2021-01-02T01:31:19.892205+00:00 │
├──────────────────┼──────────────────────────────────────┼──────────────────────────────────┤
│ Loki              1cf1dc0d-d8ec-4c85-8e64-57ab2ad8e023  2021-01-02T01:32:37.709747+00:00 │
╘══════════════════╧══════════════════════════════════════╧══════════════════════════════════╛

Apply monitors configuration

$ montecarlo monitors apply --namespace my-monitors

Gathering monitor configuration files.
- models/customer_success/schema.yml - Embedded monitor configuration found.
- models/customer_success/schema.yml - Monitor configuration found.
- models/lineage/schema.yml - Embedded monitor configuration found.

Modifications:
- ResourceModificationType.UPDATE - Monitor: type=stats, table=analytics:prod.customer_360
- ResourceModificationType.UPDATE - Monitor: type=categories, table=analytics:prod.customer_360
- ResourceModificationType.UPDATE - Monitor: type=stats, table=analytics:prod_lineage.lineage_nodes
- ResourceModificationType.UPDATE - Freshness SLI: table=analytics:prod.customer_360, freshness_threshold=30

Import DBT manifest

$ montecarlo import dbt-manifest --dbt-manifest-file target/manifest.json

Importing DBT objects into Monte Carlo catalog. please wait...

Imported a total of 51 DBT objects into Monte Carlo catalog.

Tests and Releases

Locally make test will run all tests. CircleCI manages all testing for deployment.

To publish a new release, navigate to Releases in the GitHub repo and then:

  • Click "Draft a new release"
  • In the "Choose a tag" dropdown, type the new version number, for example v1.2.3 and click "Create a new tag"
  • Follow the format from previous releases for the description
  • Leave "Set as the latest release" checked
  • Click "Publish release"
  • CircleCI will take care of publishing a new package to PyPI and generating documentation.

License

Apache 2.0 - See the LICENSE for more information.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

montecarlodata-0.166.0.tar.gz (205.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

montecarlodata-0.166.0-py3-none-any.whl (170.9 kB view details)

Uploaded Python 3

File details

Details for the file montecarlodata-0.166.0.tar.gz.

File metadata

  • Download URL: montecarlodata-0.166.0.tar.gz
  • Upload date:
  • Size: 205.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/8.5.0 pkginfo/1.12.1.2 requests/2.32.4 requests-toolbelt/1.0.0 tqdm/4.67.3 CPython/3.8.6

File hashes

Hashes for montecarlodata-0.166.0.tar.gz
Algorithm Hash digest
SHA256 1e14256a6ca7ecd5b9a63855b5094be7f30ff1597a4eb289df799270f5e42394
MD5 e9c3612bd9b783cf2e0780c4b677f930
BLAKE2b-256 78e533a186c43bc5c693b2cf55f5d828e6617363799c40b937de213c4f6e5973

See more details on using hashes here.

File details

Details for the file montecarlodata-0.166.0-py3-none-any.whl.

File metadata

  • Download URL: montecarlodata-0.166.0-py3-none-any.whl
  • Upload date:
  • Size: 170.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/8.5.0 pkginfo/1.12.1.2 requests/2.32.4 requests-toolbelt/1.0.0 tqdm/4.67.3 CPython/3.8.6

File hashes

Hashes for montecarlodata-0.166.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fb36bf06ffe9293e5c5a617a7394909f30b0e96aca3b40c3a13fcd6c18051fa6
MD5 b1ef8bdf2aee0e682b6f09240e75f23d
BLAKE2b-256 5741c52bc8db5cdd741b48cbda453959b6027f6a13da914a7d2231f5b95160fc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page