Skip to main content

A tool for analyzing MuleSoft integration projects to generate sequence diagrams or natural language descriptions of each flow

Project description

Mulesoft Flow Analyzer

A library for analyzing Mulesoft integration projects to generate sequence diagrams or natural language descriptions of each flow.

Before analysis, placeholders in code will attempt to be replaced using values from the property files in the project directory. If there are multiple properties files, you can supply a hierarchy to follow and any omitted properties will not be referenced. This can be helpful if multiple environment property files are in the project.

Depending on your output format, text files and/or diagrams will be generated with file names based on the flow name (with special characters replaced with underscores).

Installation

Install from PyPI:

pip install mulesoft-flow-analyzer

To install a specific version:

pip install mulesoft-flow-analyzer==1.1.3

For development, clone the repository and install in editable mode with test dependencies:

pip install -e ".[dev]"

A CLI that uses this library is available at mulesoft-flow-analyzer-cli.

Maintainers: see Releasing to PyPI.

Diagram Generation

A PlantUML server is required to generate the diagrams. This can either be run locally or using a public service.

Running the PlantUML server locally with Docker

No MuleSoft code is required to be sent to a public server, only the generated UML. If you don't want to send the UML to a public server, you can run the PlantUML server locally.

Pull the PlantUML server image:

docker pull plantuml/plantuml-server

Run the PlantUML server. (In this example, the server will be available on port 8087)

docker run -d -p 8087:8080 plantuml/plantuml-server:jetty

Refer to the Overriding Configuration section for how to specify the server address and port in the configuration file under analyzer_properties -> plantuml.

Alternatively, use the -s argument to specify the server address and port when running the analyzer.

Overriding Configuration

For detailed configuration options, see Configuration Documentation.

Instructions for LLMs

LLMs can be shown the python usage instructions to help them generate code.

Troubleshooting

If you encounter an error, check the log file for more information. The log file is located at the path specified in the configuration file (default is /tmp/mfa-logs/mule_flow_analyzer.log).

If the log file is not found, check the default properties file for the correct path.

The log level can be set to DEBUG to get more information in the configuration file.

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

mulesoft_flow_analyzer-1.1.3.tar.gz (27.0 kB view details)

Uploaded Source

Built Distribution

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

mulesoft_flow_analyzer-1.1.3-py3-none-any.whl (28.7 kB view details)

Uploaded Python 3

File details

Details for the file mulesoft_flow_analyzer-1.1.3.tar.gz.

File metadata

  • Download URL: mulesoft_flow_analyzer-1.1.3.tar.gz
  • Upload date:
  • Size: 27.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for mulesoft_flow_analyzer-1.1.3.tar.gz
Algorithm Hash digest
SHA256 38ab584922fa3eeba4d923bddde9b47fec59b5837fe5e55aadca055fc9ae7041
MD5 ed0dbc4c545fedfe27f58d582a3c8931
BLAKE2b-256 94cb06181f5bfd2708071142ebe2aa4b711b3f2315a6c4c7c48707644594d8e3

See more details on using hashes here.

File details

Details for the file mulesoft_flow_analyzer-1.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for mulesoft_flow_analyzer-1.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 466c4149873a557f8be1de19bd8f55c2b2a6f69d28c4ffa09d062f84f0fae5c5
MD5 e105d04b7396f57b64a3448b192d82a6
BLAKE2b-256 7f09e71dfb329d2fdd1e72ee12fd1595f1aecbcc3eef8be6edce9be4852570db

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