Files
dify-docs/plugin-dev-zh/0222-debugging-logs.mdx
2025-07-16 16:42:34 +08:00

59 lines
1.9 KiB
Plaintext

---
dimensions:
type:
primary: implementation
detail: standard
level: intermediate
standard_title: Debugging logs
language: zh
description: 介绍如何在 Dify 插件开发中为你的工具添加日志输出功能,以便于开发和调试。
title: 输出开发和调试插件过程中的日志
---
作为插件开发者,你可能希望在插件处理过程中,为了开发或调试目的,将任意字符串输出到日志中。
为此,插件 SDK 实现了一个适用于 Python 标准库 `logging` 的处理器。通过使用它,你可以将任意字符串输出到**远程调试时的标准输出**以及**插件守护进程的容器日志**(仅社区版)。
## 示例
导入 `plugin_logger_handler` 并将其添加到你的 logger 处理器中。以下是工具插件的示例代码。
```python
from collections.abc import Generator
from typing import Any
from dify_plugin import Tool
from dify_plugin.entities.tool import ToolInvokeMessage
# 导入 logging 和自定义处理器
import logging
from dify_plugin.config.logger_format import plugin_logger_handler
# 使用自定义处理器设置日志
logger = logging.getLogger(__name__)
logger.setLevel(logging.INFO)
logger.addHandler(plugin_logger_handler)
class LoggerDemoTool(Tool):
def _invoke(self, tool_parameters: dict[str, Any]) -> Generator[ToolInvokeMessage]:
# 以不同级别输出日志信息
logger.info("This is a INFO log message.")
logger.warning("This is a WARNING log message.")
logger.error("This is a ERROR log message.")
yield self.create_text_message("Hello, Dify!")
```
{/*
Contributing Section
DO NOT edit this section!
It will be automatically generated by the script.
*/}
---
[编辑此页面](https://github.com/langgenius/dify-docs/edit/main/plugin-dev-zh/0222-debugging-logs.mdx) | [提交问题](https://github.com/langgenius/dify-docs/issues/new?template=docs.yml)