Skip to main content

Easily post good looking slack messages about your operations

Project description

SlackOps

Post process information to the slack without clogging up the channel with a bunch of messages. Easily update status, see when operation started / finished and how much time it took.

PyPI version

Installation

$ pip install slackops

Table of contents

Basic usage

import slackops

slack = slackops.Operation(token=SLACK_BOT_TOKEN, channel=CHANNEL_NAME)

slack.start("Application update", "Backup")

1. Start

slack.update("2. Updating application")

2. Updating application"

slack.update("3. Healthchecks")

3. Healthchecks

slack.finish("4. Application successfully updated!")

4. Application successfully updated!

Operation statuses also posted to thread:

Thread messages

Simple message

Note: any formatting you see in 'Message' template (header, text, context), can also be used with 'Operation' template you seen before.

slack = slackops.Message(token=SLACK_BOT_TOKEN, channel=CHANNEL_NAME)

slack.post(
    text="Example message",
    severity="error", # info | success | warning | error
    header="Header",
    context=["from ip: 192.162.1.1"],
)

message

Formatting. Default and persistent values

You can set default values:

slack.tmpl.default.set(context=["default context - from ip: 192.162.1.1"])
slack.tmpl.default.set(severity="success")

slack.post("If no value is passed, the default value will be used (if available).")

default values

And persistent values:

slack.tmpl.persistent.set(header="API event: ")
slack.tmpl.persistent.set(text="*Details:*\n")

slack.post("username: haru\n ", header="new user!")

persistent values

AWS Lambda

To use 'Operation' template beetwen different lamdas, you can do following:

  1. Export in first lambda:
packed_operation = slack.pack()
  1. And import in second lambda:
slack = slackops.Operation(packed_operation=packed_operation)

Project details


Download files

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

Source Distribution

slackops-0.1.7.tar.gz (5.3 kB view hashes)

Uploaded Source

Built Distribution

slackops-0.1.7-py3-none-any.whl (6.5 kB view hashes)

Uploaded Python 3

Supported by

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