buildlog-parser extracts structured log data, categorizing status, errors, warnings, timestamps for easy CI analysis.
Project description
Buildlog Parser
A new package that extracts and structures build log information from raw text inputs.
Overview
The package takes unstructured build log text as input and uses llmatch-messages to parse and extract key details such as build status, errors, warnings, and timestamps. It returns a structured output that includes categorized log entries, making it easier to analyze and troubleshoot build processes.
Installation
pip install buildlog_parser
Usage
from buildlog_parser import buildlog_parser
response = buildlog_parser(
user_input="unstructured_build_log_text",
api_key=None, # or os.getenv("LLM7_API_KEY")
llm=None, # or ChatLLM7()
)
Parameters
user_input: str - the user input text to processllm: Optional[BaseChatModel] - the langchain llm instance to use, if not provided the default ChatLLM7 will be used.api_key: Optional[str] - the api key for llm7, if not provided the default ChatLLM7 will be used from langchain_llm7 https://pypi.org/project/langchain-lab7/ by default.
You can safely pass your own llm instance (based on https://docs.langchain.com/#how-do-i-use-this-library) if you want to use another LLM, via passing it like:
from langchain_openai import ChatOpenAI
from buildlog_parser import buildlog_parser
llm = ChatOpenAI()
response = buildlog_parser(user_input="unstructured_build_log_text", llm=llm)
or for example to use the anthropic https://docs.langchain.com/#anthropic:
from langchain_anthropic import ChatAnthropic
from buildlog_parser import buildlog_parser
llm = ChatAnthropic()
response = buildlog_parser(user_input="unstructured_build_log_text", llm=llm)
or google https://docs.langchain.com/#google:
from langchain_google_genai import ChatGoogleGenerativeAI
from buildlog_parser import buildlog_parser
llm = ChatGoogleGenerativeAI()
response = buildlog_parser(user_input="unstructured_build_log_text", llm=llm)
Rate Limits
The default rate limits for LLM7 free tier are sufficient for most use cases of this package. If you want higher rate limits for LLM7 you can pass your own api_key via environment variable LLM7_API_KEY or via passing it directly like:
from buildlog_parser import buildlog_parser
response = buildlog_parser(
user_input="unstructured_build_log_text",
api_key="your_api_key",
)
You can get a free api key by registering at https://token.llm7.io/
GitHub Issues
If you encounter any issues or would like to contribute to the project, please visit: https://github.com/chigwell/buildlog-parser
Author
Eugene Evstafev - hi@euegne.plus
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 buildlog_parser-2025.12.22082056.tar.gz.
File metadata
- Download URL: buildlog_parser-2025.12.22082056.tar.gz
- Upload date:
- Size: 5.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2f10ea8c2f18b643cefcfe436444567f60ce4ef70a944c90df2aba93a976093f
|
|
| MD5 |
2add0c00bc08f010c3dbe6f9d554e83f
|
|
| BLAKE2b-256 |
2623adc7e60a67fce1795064c33216e5fe47a86c9acb364feca4dc41d3ab2d8d
|
File details
Details for the file buildlog_parser-2025.12.22082056-py3-none-any.whl.
File metadata
- Download URL: buildlog_parser-2025.12.22082056-py3-none-any.whl
- Upload date:
- Size: 6.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
26eb913ac64ef4275f226c889cce62cbce21add54b4d1f1cd24f7a9a411926aa
|
|
| MD5 |
634c94025f60eaa903d9f263bb05f626
|
|
| BLAKE2b-256 |
22d51bc83a159d08a1f081bbee27e05392e5207ad36096454bc3fb61cd1935d8
|