Utilities¶
Client¶
Tasks related to connecting to a Tamr instance
-
tamr_toolbox.utils.client.
health_check
(client)[source]¶ Query the health check API and check if each service is healthy (returns True)
- Parameters
client (
Client
) – the tamr client- Return type
- Returns
True if all services are healthy, False if unhealthy
-
tamr_toolbox.utils.client.
create
(*, username, password, host, port='9100', protocol='http', enforce_healthy=False)[source]¶ Creates a Tamr client from the provided configuration values
- Parameters
- Return type
Client
- Returns
Tamr client
-
tamr_toolbox.utils.client.
get_with_connection_retry
(client, api_endpoint, *, timeout_seconds=600, sleep_seconds=20)[source]¶ - Will handle exceptions when attempting to connect to the Tamr API.
This is used to handle connection issues when Tamr restarts due to a restore.
- Parameters
- Return type
Response
- Returns
A response object from API request.
-
tamr_toolbox.utils.client.
poll_endpoint
(client, api_endpoint, *, poll_interval_seconds=3, polling_timeout_seconds=None, connection_retry_timeout_seconds=600)[source]¶ Waits until job has a state of Canceled, Succeeded, or Failed.
- Parameters
client (
Client
) – A Tamr client objectapi_endpoint (
str
) – Tamr API endpointpoll_interval_seconds (
int
) – Amount of time in between polls of job state.polling_timeout_seconds (
Optional
[int
]) – Amount of time before a timeout error is thrown.connection_retry_timeout_seconds (
int
) – Amount of time before timeout error is thrown during connection retry.
- Return type
Response
- Returns
A response object from API request.
Configuration¶
Tasks related to loading and using configuration files
Logging¶
Tasks related to logging within scripts
-
tamr_toolbox.utils.logger.
create
(name, *, log_to_terminal=True, log_directory=None, log_prefix='', date_format='%Y-%m-%d')[source]¶ Return logger object with pre-defined format. Log file will be located under log_directory with file name <log_prefix>_<date>.log, quashing extra separating underscores. Defaults to <date>.log.
- Parameters
name (
str
) – This sets the name of your logger instance. It does not affect the file name. To change the filename use log_prefixlog_to_terminal (
bool
) – Boolean indicating whether or not to log messages to the terminal.log_directory (
Optional
[str
]) – The directory to place log files insidelog_prefix (
str
) – The string to prepend to the date in the log file name.date_format (
str
) – format string for date suffix on log file name
- Return type
- Returns
Logger object
-
tamr_toolbox.utils.logger.
set_logging_level
(logger_name, level)[source]¶ A useful method for setting logging level for all a given logger and its handlers.
-
tamr_toolbox.utils.logger.
enable_package_logging
(package_name, *, log_directory=None, level=None, log_prefix='', date_format='%Y-%m-%d')[source]¶ A helper function to enable package logging for any package following python best practices for logging names (i.e. logger name == package.module.submodule).
- Parameters
package_name (
str
) – the name of the package for which to enable logginglog_directory (
Optional
[str
]) – optional log directory which the package will write logslevel (
Optional
[str
]) – optional level to specify, default is WARNING (inherited from base logging package)log_prefix (
str
) – Optional prefix for log files, if None will be blank stringdate_format (
str
) – Optional date format for log file
- Return type
None
-
tamr_toolbox.utils.logger.
enable_toolbox_logging
(*, log_directory=None, level=None, log_prefix='', date_format='%Y-%m-%d')[source]¶ A simple wrapper to enable_package_logging to give friendly call for users.
- Parameters
log_directory (
Optional
[str
]) – optional directory to which to write tamr_toolbox logslevel (
Optional
[str
]) – Optional logging level to specify, default is WARNING (inherited from base logging package)log_prefix (
str
) – Optional prefix for log files, if None will be blank stringdate_format (
str
) – Optional date format for log file
- Return type
None
Operation¶
Tasks related to Tamr operations (or jobs)
-
tamr_toolbox.utils.operation.
enforce_success
(operation)[source]¶ Raises an error if an operation fails
- Parameters
operation (
Operation
) – A Tamr operation- Return type
None
-
tamr_toolbox.utils.operation.
from_resource_id
(tamr, *, job_id)[source]¶ Create an operation from a job id
-
tamr_toolbox.utils.operation.
get_latest
(tamr)[source]¶ Get the latest operation
- Parameters
tamr (
Client
) – A Tamr client- Return type
Operation
- Returns
The latest job
-
tamr_toolbox.utils.operation.
get_details
(*, operation)[source]¶ Return a text describing the information of a job
- Parameters
operation (
Operation
) – A Tamr operation- Return type
- Returns
A text describing the information of a job
Testing¶
Tasks related to testing code