Skip to main content

Populate logs from jobs to running log of the pipeline

Project description

pipen-poplog

Populate logs from jobs to running log of the pipeline for pipen.

Installation

pip install -U pipen-poplog

Enabling/Disabling the plugin

The plugin is registered via entrypoints. It's by default enabled. To disable it: plugins=[..., "no:poplog"], or uninstall this plugin.

Usage

from pipen import Proc, Pipen


class Poplog(Proc):
    input = "var:var"
    input_data = [0, 1, 2]
    script = """
        echo -n "[PIPEN-POPLOG][INFO] Log message "
        sleep 1  # Simulate message not read in time
        echo "by {{in.var}} 1"
        sleep 1
        echo "[PIPEN-POPLOG][ERROR] Log message by {{in.var}} 2"
        sleep 1
        echo "[PIPEN-POPLOG][INFO] Log message by {{in.var}} 3"
    """


if __name__ == "__main__":
    Pipen().run()
01-12 11:23:52 I core    ╭═══════════════ PoplogDefault ═════════════════╮
01-12 11:23:52 I core    ║ A default poplog proc                         ║
01-12 11:23:52 I core    ╰═══════════════════════════════════════════════╯
01-12 11:23:52 I core    PoplogDefault: Workdir: '.pipen/Pipeline/PoplogDefault'
01-12 11:23:52 I core    PoplogDefault: <<< [START]
01-12 11:23:52 I core    PoplogDefault: >>> [END]
01-12 11:23:56 I poplog  PoplogDefault: [0/2] Log message by 0 1
01-12 11:23:59 E poplog  PoplogDefault: [0/2] Log message by 0 2
01-12 11:24:02 I poplog  PoplogDefault: [0/2] Log message by 0 3

Configuration

  • plugin_opts.poplog_loglevel: The log level for poplog. Default: info.
  • plugin_opts.poplog_pattern: The pattern to match the log message. Default: r'\[PIPEN-POPLOG\]\[(?P<level>\w+)\] (?P<message>.*)'.
  • plugin_opts.poplog_jobs: The job indices to be populated. Default: [0] (the first job).
  • plugin_opts.poplog_max: The total max number of the log message to be poplutated. Default: 99.
  • plugin_opts.poplog_source: The source of the log message. Default: stdout.

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

pipen_poplog-1.1.6.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

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

pipen_poplog-1.1.6-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file pipen_poplog-1.1.6.tar.gz.

File metadata

  • Download URL: pipen_poplog-1.1.6.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.2 CPython/3.12.3 Linux/6.14.0-1017-azure

File hashes

Hashes for pipen_poplog-1.1.6.tar.gz
Algorithm Hash digest
SHA256 f9597929a4f30bd87ac17572510fae700862bcc9dc58514d32ff3a8b0077f089
MD5 28888a732a93d93300cf96ba01ddc9f8
BLAKE2b-256 c991d09fea3624d46941bb5b1e6670d90a1df4e2762f8e1ac34de8296b743bb4

See more details on using hashes here.

File details

Details for the file pipen_poplog-1.1.6-py3-none-any.whl.

File metadata

  • Download URL: pipen_poplog-1.1.6-py3-none-any.whl
  • Upload date:
  • Size: 7.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.2 CPython/3.12.3 Linux/6.14.0-1017-azure

File hashes

Hashes for pipen_poplog-1.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 8d020b9943940f0804f0c8346985e7666916c48d539e3aaa92cdb3b1c844d1ef
MD5 794e3a75ba0d48b43b324338d7b58b31
BLAKE2b-256 64429a23746dff995b86f000036adadcf96c30fc6d49937dd09405d7f8616fa0

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