Skip to main content

Cortex Intelligence Platform Python SDK

Project description

Py Cortex Intelligence

Release Notes

Need to consult the history of our project? Click Here

How to build locale

pip install wheel
python setup.py bdist_wheel

How to update on PIP

python -m twine upload  dist/*

Cases of Use

DataInput Parameters

data_input_parameters = {
    'ignoreValidationErrors': True/False,
}
// If you send this parameter, the datainput will ignore errors.

Available Origins

execution_parameters = {
  'name': 'Name of your Integrations',
  'origin': 'Connector',
}

// If you send this to Execution your data need contain
// Dates in YYYY-MM-DD HH:MM:SS format
// Float numbers in XXX.XXX.XXX,YY format
// 'origin' are optional parameters, if you do not send the platform you will try to guess the formats

If you need upload a file to Cortex Application

import logging.config
from pycortexintelligence import functions as cortexfunctions

## Criamos uma instancia do filter
cortexFilter = cortexfunctions.ApplicationTenantFilter(
    'App_Using_Pycortexintelligence',
    'CLIENT'
)

## Configurando o logging do sistema
LOGGING = {
    'version': 1,
    'disable_existing_loggers': True,
    'formatters': {
        'verbose': {
            'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'
        },
    },
    "handlers": {
        'console':{
            'class': 'logging.StreamHandler',
            'formatter': 'verbose'
        },
        ## Entrada do handler do Graylog utilizando graypy
        ## Para utilizar esse handler eh necessario instalar o graypy 
        ## no requirements.txt de sua aplicacao ou com pip install graypy
        'graypy': {
            'class': 'graypy.GELFUDPHandler',
            'host': 'localhost',
            'port': 12201,
            'filters': [cortexFilter]
        }
    },
    "root": {
        "handlers": ["console", "graypy"],
        "level": "DEBUG",
    }
}
## Configuring Logging
logging.config.dictConfig(LOGGING)

# Execution Parameters
# You can define Origin, to inform platform a bundle of parses.
execution_parameters = {
    'name': 'LoadManager PyCortex',
    # 'origin': 'Connector',
}

# DataInput Parameters
data_input_parameters = {
    'ignoreValidationErrors': True,
}

# Timeouts
# You can set timeouts for the platform according to the size of the uploaded files
# or use the default
timeout = {
    'file': 300
}

# DataFormat are Optionally defined
default_data_format = {
    "charset": "UTF-8",
    "quote": "\"",
    "escape": "\\",
    "delimiter": ",",
    "fileType": "CSV",
    "compressed": "NONE"
}

try:
    # Upload to Cortex
    cortexfunctions.upload_to_cortex(
        cubo_id='',
        file_path='',
        plataform_url='CLIENT.cortex-intelligence.com',
        username='',
        password='',
        data_format=default_data_format,
        timeout=timeout,
        execution_parameters=execution_parameters,
    )
except Exception as e:
    # In case of error, send it to logger
    logging.error(str(e))

If you need download file from Cortex Application

from pycortexintelligence import functions as cortexfunctions

# DataFormat are Optionally defined
dafault_data_format = {
    "charset": "UTF-8",
    "quote": "\"",
    "escape": "\/\/",
    "delimiter": ",",
}

# Select the headers from file
columns = ['Name of Column A', 'Name of Column B']

# OPTIONAL Filters
filters = [
    ['Name of Column A', 'Value'],
    ['Name of Column A', 'Value1|Value2|Value3'],
    ['Name of Column B', 'dd/mm/YYYY'],
    ['Name of Column B', 'dd/mm/YYYY-dd/mm/YYYY'],
]

# Download from Cortex
cortexfunctions.download_from_cortex(
    cubo_id='',
    file_path='',
    plataform_url='CLIENT.cortex-intelligence.com',
    username='',
    password='',
    data_format=dafault_data_format,
    columns=columns,
    filters=filters,
)

Validating downloaded data from platform.

Now download_from_cortex function returns a variable with Content-Rows from the response header

content_rows = cortexfunctions.download_from_cortex(
    ...
)

CLI Usage

cortex.py --help

Examples

cortex.py startproject --name "Project Name" --sname safe_project_name

How to Contribute

Developers

Developers can access our development manual by clicking here.

Community

You can create a new Issue clicking here, and we will start a description about the reported Bug or Feature.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

pycortexintelligence-1.2.7-py3-none-any.whl (16.4 kB view details)

Uploaded Python 3

File details

Details for the file pycortexintelligence-1.2.7-py3-none-any.whl.

File metadata

File hashes

Hashes for pycortexintelligence-1.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 9e62d630551b8793336d3bad6c1ddc24926c6393f2f1e16d1d89b28fd700d02f
MD5 52215186f4bb7f62e9690f582ceece49
BLAKE2b-256 1cb5261d285102298ea47c86842df6b4436273f8c0cb66f46f188c4d02770373

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