Enhancing Kieker usability in Jupyter Notebooks
Project description
Kieker for Jupyter
Kieker for Jupyter is a Python package designed to seamlessly integrate Kieker performance monitoring and analysis capabilities into Jupyter Notebooks. This integration simplifies the process of conducting performance analyses within an interactive environment, making it more accessible for data scientists and developers.
Features
- Simplified Analysis Execution: Provides straightforward methods to run various Kieker analyses directly from Jupyter cells.
- Modular Design: Easily extendable to include additional analyses as needed.
- Interactive Visualization: Leverages Jupyter's interactive features to visualize performance data effectively.
Installation
Prerequisites
graphviz>= 3.0pypdf>= 5.4.0python>= 3.8
Install the package using pip:
pip install --index-url https://test.pypi.org/simple/ --no-deps kieker-for-jupyter
Usage
Here's a basic example of how to use the package:
from kieker.tools.trace_analysis import TA, AnalysisType, GraphicType
# 1. Set path to trace-analysis CLI
TA.set_trace_analysis_path("~/kieker/trace-analysis-2.0.2/bin/trace-analysis")
# 2. Perform an Assembly Sequence Diagrams analysis with auto-displayed PDF
TA.draw(
analysis_type=AnalysisType.ASDIAGRAMS,
graphic_type=GraphicType.PDF,
input_dir="~/kieker-logs/kieker*",
output_dir="output-asdiagrams",
limit=10,
file_range=range(20,40)
)
where numbered pdf files will be created and merged as an output file with
limitas an optional parameter to set the maximum number of pdf files to use,file_rangeas an optional parameter to set the range of pdf files to use.
Available Analyses
- Call Tree (
aactree,adctree,ctrees): Visualizes the call tree of deployed components. - Dependency Graph (
acdgraph,aodgraph,cdgraph,dcdgraph,dodgraph): Displays the relationships between deployed components. - Sequence Diagrams (
asdiagrams,dsdiagrams): Illustrates the dynamic interactions within the software architecture.
Extending the Package
The package's modular structure allows for easy integration of new analysis types. To add a new analysis:
Update the Analysis Dictionary: Add the new analysis type to the enum of the AnalysisType class.
Example:
@staticmethod
class AnalysisType(Enum):
AACTREE = ("--plot-Aggregated-Assembly-Call-Tree", None)
ADCTREE = ("--plot-Aggregated-Deployment-Call-Tree", None)
ACDGRAPH = ("--plot-Assembly-Component-Dependency-Graph", "none")
...
NEWTYPE = ("traceanalysis call", "time parameter")
Contributing
Contributions are welcome! Please fork the repository and submit a pull request with your enhancements.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Acknowledgements
Special thanks to the Kieker community for their continuous support and development of the Kieker monitoring framework.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file kieker_for_jupyter-0.1.0.tar.gz.
File metadata
- Download URL: kieker_for_jupyter-0.1.0.tar.gz
- Upload date:
- Size: 10.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
903cf95eef47aaf8f023f0ba1531b94d633d56f3480a2bb361fffa467b3123cf
|
|
| MD5 |
ff9e53fc232e8590efacb758d8fc8a35
|
|
| BLAKE2b-256 |
bb568f89351a17ac3404c0b165fde96ff56de87cee1a7fbce637ad1bcae66386
|
File details
Details for the file kieker_for_jupyter-0.1.0-py3-none-any.whl.
File metadata
- Download URL: kieker_for_jupyter-0.1.0-py3-none-any.whl
- Upload date:
- Size: 10.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9fbc190008ce10c662c13ef35ef3f914aae767d3877bad1d5f5ab7dad58a5a48
|
|
| MD5 |
c6ed6acbc6a5aeb392a57d249aac2935
|
|
| BLAKE2b-256 |
567a158660a734521650a77268be8561a97c6e0c5a6db5a6edcd727843fb5230
|