OmniLLP: Enhancing LLM-based Log Level Prediction with Context-Aware Retrieval
2508.08545v1
cs.SE, cs.AI
2025-08-14
Авторы:
Youssef Esseddiq Ouatiti, Mohammed Sayagh, Bram Adams, Ahmed E. Hassan
Резюме на русском
## Контекст
Современные программные системы используют журналирование (logging) для регистрации сведений о работе приложений во время выполнения. Это способствует улучшению обслуживания, отладке и мониторингу программных продуктов. Однако выбор уровня журналирования (log level) является одной из самых сложных задач при разработке, так как влияет на производительность и наблюдаемость системы. Решение этой проблемы часто требует значительных усилий разработчиков. В последние годы появились машинное обучение (ML) и трансформационные языковые модели (LLMs) для автоматизации выбора уровня журналирования. Несмотря на позитивные результаты, эти модели используют рандомизированные контекстные примеры, не учитывая структуры и разнообразие практик журналирования в развитых программных проектах. Мы предлагаем OmniLLP — расширенную модель LLPs, которая учитывает контекст семантики и собственности разработчиков, чтобы улучшить точность прогноза уровня журналирования.
## Метод
OmniLLP основывается на кластеризации файлов исходного кода на основе двух признаков: (1) семантической схожести, отражающей функциональную цель кода, и (2) собственности разработчиков, касающейся их участия в разработке конкретных файлов. Для выбора контекста в ходе прогнозирования мы используем семантические кластеры, структурируемые по семантическим признакам, и собственностные кластеры, определяемые совместным участием разработчиков. Эти кластеры обеспечивают более контекстуально подходящие примеры для ввода в LLM, увеличивая точность прогноза уровня журналирования. Мы реализовали нашу модель на основе трансформационных моделей LLMs и создали метрики для оценки её эффективности.
## Результаты
Мы провели эксперименты с OmniLLP на нескольких проектах с открытым исходным кодом, оценивая её производительность сравнительно с базовой моделью LLPs. Наши результаты показали, что кластеризация по семантике и собственности приводит к дополнительному улучшению точности прогноза уровня журналирования на 8% AUC по сравнению с рандомизированными примерами в контексте. Комбинация семантической и собственностной кластеризации дала лучшие результаты — AUC от 0.88 до 0.96 на проектах, протестированных в рамках исследования. Эти результаты подтверждают то, что OmniLLP предоставляет более точное, контекстуально осмысленное прогнозирование уровня журналирования, что может существенно упростить обслуживание и мониторинг программных систем.
## Значимость
OmniLLP может быть применена в различных областях, включая отладку, мониторинг и анализ производительности программных систем. Она предоставля
Abstract
Developers insert logging statements in source code to capture relevant
runtime information essential for maintenance and debugging activities. Log
level choice is an integral, yet tricky part of the logging activity as it
controls log verbosity and therefore influences systems' observability and
performance. Recent advances in ML-based log level prediction have leveraged
large language models (LLMs) to propose log level predictors (LLPs) that
demonstrated promising performance improvements (AUC between 0.64 and 0.8).
Nevertheless, current LLM-based LLPs rely on randomly selected in-context
examples, overlooking the structure and the diverse logging practices within
modern software projects. In this paper, we propose OmniLLP, a novel LLP
enhancement framework that clusters source files based on (1) semantic
similarity reflecting the code's functional purpose, and (2) developer
ownership cohesion. By retrieving in-context learning examples exclusively from
these semantic and ownership aware clusters, we aim to provide more coherent
prompts to LLPs leveraging LLMs, thereby improving their predictive accuracy.
Our results show that both semantic and ownership-aware clusterings
statistically significantly improve the accuracy (by up to 8\% AUC) of the
evaluated LLM-based LLPs compared to random predictors (i.e., leveraging
randomly selected in-context examples from the whole project). Additionally,
our approach that combines the semantic and ownership signal for in-context
prediction achieves an impressive 0.88 to 0.96 AUC across our evaluated
projects. Our findings highlight the value of integrating software
engineering-specific context, such as code semantic and developer ownership
signals into LLM-LLPs, offering developers a more accurate, contextually-aware
approach to logging and therefore, enhancing system maintainability and
observability.
Ссылки и действия
Дополнительные ресурсы: