Skip to main content

A tool designed to retrieve messages from the IOPub channel of a Jupyter kernel using jupyter_client, capturing cell outputs and logs.

Project description

Swamauri Logo

PyPI - Downloads GitHub Hits PyPI - Python Version PyPI - License
PyPI - swarmauri_tool_jupytergetiopubmessage


swarmauri_tool_jupytergetiopubmessage

A Python tool designed to retrieve messages from the IOPub channel of a Jupyter kernel using jupyter_client, capturing cell outputs, logging information, and errors.

Installation

To install swarmauri_tool_jupytergetiopubmessage, make sure you have Python 3.10 or later. You can install the latest release from PyPI using:

pip install swarmauri_tool_jupytergetiopubmessage

Verify the installation by opening a Python shell and importing the module:

python

import swarmauri_tool_jupytergetiopubmessage print(swarmauri_tool_jupytergetiopubmessage.version) '0.1.0.dev1'

If you see a valid version number, the package is installed and ready to use.

Usage

Below is a brief example of how to use JupyterGetIOPubMessageTool to capture messages from an active Jupyter kernel. In most scenarios, you will have a running Jupyter kernel and a kernel client available.


Example usage:

from jupyter_client import KernelManager from swarmauri_tool_jupytergetiopubmessage import JupyterGetIOPubMessageTool

Initialize a new Jupyter kernel

km = KernelManager() km.start_kernel() kc = km.client() kc.start_channels()

Execute a sample command in the kernel to produce some output

kc.execute("print('Hello from the kernel!')")

Initialize and use the JupyterGetIOPubMessageTool

tool = JupyterGetIOPubMessageTool() result = tool(kernel_client=kc, timeout=3.0)

print("Captured stdout:", result["stdout"]) print("Captured stderr:", result["stderr"]) print("Captured logs:", result["logs"]) print("Execution results:", result["execution_results"]) print("Did timeout occur?:", result["timeout_exceeded"])

Clean up kernel resources

kc.stop_channels() km.shutdown_kernel()


This usage example demonstrates how to retrieve stdout messages, stderr messages, logs (including certain non-stream messages), and results from executed cells. The timeout parameter controls how long the tool waits for IOPub messages before returning. If the time is exceeded, "timeout_exceeded" will be True.

Dependencies

• Python 3.10 to 3.13
• jupyter_client
• swarmauri_core (for component registration)
• swarmauri_base (for the base tool functionality)

Additional development dependencies (e.g., flake8, pytest) are specified in the pyproject.toml file but not required for basic usage.

Building & Testing

This package uses Poetry for its build system. You may use any standard Python tooling to install and test in your environment. See above Installation instructions for installing into your project.


© 2023 Swarmauri. All rights reserved. This project is licensed under the Apache-2.0 License. Use of this tool is governed by the license conditions included in the repository.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

Built Distribution

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

File details

Details for the file swarmauri_tool_jupytergetiopubmessage-0.7.0.dev11.tar.gz.

File metadata

File hashes

Hashes for swarmauri_tool_jupytergetiopubmessage-0.7.0.dev11.tar.gz
Algorithm Hash digest
SHA256 ea0c5182a7f04e2afb230f2bf1cc9c431e1a8fc0188191d1ffa41a6f355c2dff
MD5 1526e18e396dc60bc27125e3eb8abb90
BLAKE2b-256 11f90b970675c6519acfa81bc0500be38c2019b5417043e89d48108a51f55839

See more details on using hashes here.

File details

Details for the file swarmauri_tool_jupytergetiopubmessage-0.7.0.dev11-py3-none-any.whl.

File metadata

File hashes

Hashes for swarmauri_tool_jupytergetiopubmessage-0.7.0.dev11-py3-none-any.whl
Algorithm Hash digest
SHA256 21d42f14daf6f49832416bac5db7cdfd5b6fe529a5cca5321f0ad09b7a3a3334
MD5 3700e3eb585d977bf6cd1490a3b329da
BLAKE2b-256 c2c1eae35db868ff60d5ade49b33cc153b1aca1153b70796bacb1044c0b2552e

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