honeycomb.integrationmanager package

Submodules

honeycomb.integrationmanager.defs module

Honeycomb integrations definitions and constants.

class honeycomb.integrationmanager.defs.IntegrationAlertStatuses[source]

Bases: honeycomb.defs.IBaseType

Provides information about the alert status in queue.

DONE = BaseNameLabel(name='done', label='Done')
ERROR_MISSING_SEND_FIELDS = BaseNameLabel(name='error_missing', label='Error. Missing required alert data.')
ERROR_POLLING = BaseNameLabel(name='error_polling', label='Error polling')
ERROR_POLLING_FORMATTING = BaseNameLabel(name='error_polling_formatting', label='Error polling. Result format not recognized.')
ERROR_SENDING = BaseNameLabel(name='error_sending', label='Error sending')
ERROR_SENDING_FORMATTING = BaseNameLabel(name='error_sending_formatting', label='Error sending. Result format not recognized.')
IN_POLLING = BaseNameLabel(name='in_polling', label='Polling')
PENDING = BaseNameLabel(name='pending', label='Pending')
POLLING = BaseNameLabel(name='polling', label='Polling')
class honeycomb.integrationmanager.defs.IntegrationTypes[source]

Bases: honeycomb.defs.IBaseType

Integration types.

Currently only output event is supported.

EVENT_OUTPUT = BaseNameLabel(name='event_output', label='Event output')

honeycomb.integrationmanager.error_messages module

Honeycomb integration error messages.

honeycomb.integrationmanager.exceptions module

Honeycomb Output Integration Exceptions.

exception honeycomb.integrationmanager.exceptions.IntegrationMissingRequiredFieldError(*args, **kwargs)[source]

Bases: honeycomb.exceptions.PluginError

IntegrationMissingRequiredFieldError.

exception honeycomb.integrationmanager.exceptions.IntegrationNoMethodImplementationError(*args, **kwargs)[source]

Bases: honeycomb.exceptions.PluginError

IntegrationNoMethodImplementationError.

exception honeycomb.integrationmanager.exceptions.IntegrationNotFound(*args, **kwargs)[source]

Bases: honeycomb.exceptions.PluginError

Integration not found.

msg_format = 'Cannot find integration named {}, try installing it?'
exception honeycomb.integrationmanager.exceptions.IntegrationOutputFormatError(*args, **kwargs)[source]

Bases: honeycomb.exceptions.PluginError

IntegrationOutputFormatError.

exception honeycomb.integrationmanager.exceptions.IntegrationPackageError(*args, **kwargs)[source]

Bases: honeycomb.exceptions.PluginError

IntegrationPackageError.

exception honeycomb.integrationmanager.exceptions.IntegrationPollEventError(*args, **kwargs)[source]

Bases: honeycomb.exceptions.PluginError

IntegrationPollEventError.

exception honeycomb.integrationmanager.exceptions.IntegrationSendEventError(*args, **kwargs)[source]

Bases: honeycomb.exceptions.PluginError

IntegrationSendEventError.

msg_format = 'Error sending integration event: {}'
exception honeycomb.integrationmanager.exceptions.IntegrationTestFailed(*args, **kwargs)[source]

Bases: honeycomb.exceptions.PluginError

Integration not found.

msg_format = 'Integration test failed, details: {}'

honeycomb.integrationmanager.integration_utils module

Honeycomb Integration Manager.

class honeycomb.integrationmanager.integration_utils.BaseIntegration(integration_data)[source]

Bases: object

Base Output Integration Class.

Will be overridden by output plugins.

format_output_data(output_data)[source]

format_output_data.

poll_for_updates(integration_output_data)[source]

poll_for_updates.

send_event(required_alert_fields)[source]

Send event.

test_connection(data)[source]

test_connection.

honeycomb.integrationmanager.models module

Honetcomb integration models.

class honeycomb.integrationmanager.models.ConfiguredIntegration(name, path, integration, send_muted=False, created_at=NOTHING)[source]

Bases: object

Configured integration model.

class honeycomb.integrationmanager.models.Integration(parameters, display_name, required_fields, polling_enabled, integration_type, max_send_retries, supported_event_types, test_connection_enabled, module=None, description=None, polling_duration=0)[source]

Bases: object

Integration model.

class honeycomb.integrationmanager.models.IntegrationAlert(alert, status, retries, configured_integration)[source]

Bases: object

Integration alert model.

honeycomb.integrationmanager.registration module

Honeycomb serivce manager.

honeycomb.integrationmanager.registration.get_integration_module(integration_path)[source]

Add custom paths to sys and import integration module.

Parameters:integration_path – Path to integration folder
honeycomb.integrationmanager.registration.register_integration(package_folder)[source]

Register a honeycomb integration.

Parameters:package_folder – Path to folder with integration to load
Returns:Validated integration object
Return type:honeycomb.utils.defs.Integration()

honeycomb.integrationmanager.tasks module

Honeycomb integration tasks.

honeycomb.integrationmanager.tasks.configure_integration(path)[source]

Configure and enable an integration.

honeycomb.integrationmanager.tasks.create_integration_alert_and_call_send(alert, configured_integration)[source]

Create an IntegrationAlert object and send it to Integration.

honeycomb.integrationmanager.tasks.get_current_datetime_utc()[source]

Return a datetime object localized to UTC.

honeycomb.integrationmanager.tasks.get_valid_configured_integrations(alert)[source]

Return a list of integrations for alert filtered by alert_type.

Returns:A list of relevant integrations
honeycomb.integrationmanager.tasks.poll_integration_alert_data(integration_alert)[source]

Poll for updates on waiting IntegrationAlerts.

honeycomb.integrationmanager.tasks.poll_integration_information_for_waiting_integration_alerts()[source]

poll_integration_information_for_waiting_integration_alerts.

honeycomb.integrationmanager.tasks.send_alert_to_configured_integration(integration_alert)[source]

Send IntegrationAlert to configured integration.

honeycomb.integrationmanager.tasks.send_alert_to_subscribed_integrations(alert)[source]

Send Alert to relevant integrations.

Module contents

Honeycomb Output Manager.