Integrate Langfuse
Last updated
Last updated
Langfuse is an open-source LLM engineering platform that helps teams collaborate on debugging, analyzing, and iterating their applications.
Introduction to Langfuse: https://langfuse.com/
Register and log in to Langfuse on the official website
Create a project in Langfuse. After logging in, click New on the homepage to create your own project. The project will be used to associate with applications in Dify for data monitoring.
Edit a name for the project.
Create project API credentials. In the left sidebar of the project, click Settings to open the settings.
In Settings, click Create API Keys to create project API credentials.
Copy and save the Secret Key, Public Key, and Host.
Configure Langfuse in Dify. Open the application you need to monitor, open Monitoring in the side menu, and select Tracing app performance on the page.
After clicking configure, paste the Secret Key, Public Key, Host created in Langfuse into the configuration and save.
Once successfully saved, you can view the status on the current page. If it shows as started, it is being monitored.
After configuration, debugging or production data of the application in Dify can be viewed in Langfuse.
Tracing workflow and chatflow
workflow_app_log_id/workflow_run_id
id
user_session_id
user_id
workflow_{id}
name
start_time
start_time
end_time
end_time
inputs
input
outputs
output
Model token consumption
usage
metadata
metadata
error
level
error
status_message
[workflow]
tags
["message", conversation_mode]
session_id
conversion_id
parent_observation_id
Workflow Trace Info
workflow_id - Unique ID of Workflow
conversation_id - Conversation ID
workflow_run_id - Workflow ID of this runtime
tenant_id - Tenant ID
elapsed_time - Elapsed time at this runtime
status - Runtime status
version - Workflow version
total_tokens - Total token used at this runtime
file_list - List of files processed
triggered_from - Source that triggered this runtime
workflow_run_inputs - Input of this workflow
workflow_run_outputs - Output of this workflow
error - Error Message
query - Queries used at runtime
workflow_app_log_id - Workflow Application Log ID
message_id - Relevant Message ID
start_time - Start time of this runtime
end_time - End time of this runtime
workflow node executions - Workflow node runtime information
Metadata
workflow_id - Unique ID of Workflow
conversation_id - Conversation ID
workflow_run_id - Workflow ID of this runtime
tenant_id - Tenant ID
elapsed_time - Elapsed time at this runtime
status - Operational state
version - Workflow version
total_tokens - Total token used at this runtime
file_list - List of files processed
triggered_from - Source that triggered this runtime
For trace llm conversation
message_id
id
user_session_id
user_id
message_{id}
name
start_time
start_time
end_time
end_time
inputs
input
outputs
output
Model token consumption
usage
metadata
metadata
error
level
error
status_message
["message", conversation_mode]
tags
conversation_id
session_id
conversion_id
parent_observation_id
Message Trace Info
message_id - Message ID
message_data - Message data
user_session_id - Session ID for user
conversation_model - Conversation model
message_tokens - Message tokens
answer_tokens - Answer Tokens
total_tokens - Total Tokens from Message and Answer
error - Error Message
inputs - Input data
outputs - Output data
file_list - List of files processed
start_time - Start time
end_time - End time
message_file_data - Message of relevant file data
conversation_mode - Conversation mode
Metadata
conversation_id - Conversation ID
ls_provider - Model provider
ls_model_name - Model ID
status - Message status
from_end_user_id - Sending user's ID
from_account_id - Sending account's ID
agent_based - Whether agent based
workflow_run_id - Workflow ID of this runtime
from_source - Message source
message_id - Message ID
Used to track conversation moderation
user_id
user_id
moderation
name
start_time
start_time
end_time
end_time
inputs
input
outputs
output
metadata
metadata
[moderation]
tags
message_id
parent_observation_id
Message Trace Info
message_id - Message ID
user_id - user ID
workflow_app_log_id workflow_app_log_id
inputs - Input data for review
message_data - Message Data
flagged - Whether it is flagged for attention
action - Specific actions to implement
preset_response - Preset response
start_time - Start time of review
end_time - End time of review
Metadata
message_id - Message ID
action - Specific actions to implement
preset_response - Preset response
Used to track suggested questions
user_id
user_id
suggested_question
name
start_time
start_time
end_time
end_time
inputs
input
outputs
output
metadata
metadata
[suggested_question]
tags
message_id
parent_observation_id
Message Trace Info
message_id - Message ID
message_data - Message data
inputs - Input data
outputs - Output data
start_time - Start time
end_time - End time
total_tokens - Total tokens
status - Message Status
error - Error Message
from_account_id - Sending account ID
agent_based - Whether agent based
from_source - Message source
model_provider - Model provider
model_id - Model ID
suggested_question - Suggested question
level - Status level
status_message - Message status
Metadata
message_id - Message ID
ls_provider - Model Provider
ls_model_name - Model ID
status - Message status
from_end_user_id - Sending user's ID
from_account_id - Sending Account ID
workflow_run_id - Workflow ID of this runtime
from_source - Message source
Used to track knowledge base retrieval
user_id
user_id
dataset_retrieval
name
start_time
start_time
end_time
end_time
inputs
input
outputs
output
metadata
metadata
[dataset_retrieval]
tags
message_id
parent_observation_id
Dataset Retrieval Trace Info
message_id - Message ID
inputs - Input Message
documents - Document data
start_time - Start time
end_time - End time
message_data - Message data
Metadata
message_id - Message ID
ls_provider - Model Provider
ls_model_name - Model ID
status - Model status
from_end_user_id - Sending user's ID
from_account_id - Sending account's ID
agent_based - Whether agent based
workflow_run_id - Workflow ID of this runtime
from_source - Message Source
Used to track tool invocation
user_id
user_id
tool_name
name
start_time
start_time
end_time
end_time
inputs
input
outputs
output
metadata
metadata
["tool", tool_name]
tags
message_id
parent_observation_id
Tool Trace Info
message_id - Message ID
tool_name - Tool Name
start_time - Start time
end_time - End time
tool_inputs - Tool inputs
tool_outputs - Tool outputs
message_data - Message data
error - Error Message,if exist
inputs - Input of Message
outputs - Output of Message
tool_config - Tool config
time_cost - Time cost
tool_parameters - Tool Parameters
file_url - URL of relevant files
Metadata
message_id - Message ID
tool_name - Tool Name
tool_inputs - Tool inputs
tool_outputs - Tool outputs
tool_config - Tool config
time_cost - Time. cost
error - Error Message
tool_parameters - Tool parameters
message_file_id - Message file ID
created_by_role - Created by role
created_user_id - Created user ID
Used to track conversation title generation
user_id
user_id
generate_name
name
start_time
start_time
end_time
end_time
inputs
input
outputs
output
metadata
metadata
[generate_name]
tags
Generate Name Trace Info
conversation_id - Conversation ID
inputs - Input data
outputs - Generated session name
start_time - Start time
end_time - End time
tenant_id - Tenant ID
Metadata
conversation_id - Conversation ID
tenant_id - Tenant ID