Commit Graph

8657 Commits

Author SHA1 Message Date
GareArc 956ed5a48c
fix(enterprise): Remove OTEL log export 2026-02-02 23:28:39 -08:00
GareArc ad39040fa8
feat(enterprise): Add independent metrics export with dedicated MeterProvider
- Create dedicated MeterProvider instance (independent from ext_otel.py)
- Add create_metric_exporter() to _ExporterFactory with HTTP/gRPC support
- Enterprise metrics now work without requiring standard OTEL to be enabled
- Add MeterProvider shutdown to cleanup lifecycle
- Update module docstring to reflect full independence (Tracer, Logger, Meter)
2026-02-02 22:41:41 -08:00
GareArc fab985f348
fix(enterprise): Scope log handler to telemetry logger only
Only export structured telemetry logs, not all application logs. The attach_log_handler method now attaches to the 'dify.telemetry' logger instead of the root logger.
2026-02-02 22:15:43 -08:00
GareArc a5b93e13e6
feat(enterprise): Add gRPC protocol support for OTLP telemetry
- Add ENTERPRISE_OTLP_PROTOCOL config (http/grpc, default: http)
- Introduce _ExporterFactory class for protocol-agnostic exporter creation
- Support both HTTP and gRPC OTLP endpoints for traces and logs
- Refactor endpoint path handling into factory methods
2026-02-02 21:47:43 -08:00
NFish 232916a89d Merge branch 'release/e-1.11.4' into deploy/enterprise 2026-02-03 11:22:21 +08:00
GareArc 87b65f9cf6
Merge branch '1.11.4-otel-telemetry-ee' into deploy/enterprise 2026-02-02 18:21:18 -08:00
GareArc 5f6e90e4d2
feat(enterprise): Add OTEL logs export with span_id correlation
- Add ENTERPRISE_OTEL_LOGS_ENABLED and ENTERPRISE_OTLP_LOGS_ENDPOINT config options
- Implement EnterpriseLoggingHandler for log record translation with trace/span ID parsing
- Add LoggerProvider and BatchLogRecordProcessor for OTLP log export
- Correlate telemetry logs with spans via span_id_source parameter
- Attach log handler during enterprise telemetry initialization
2026-02-02 18:16:58 -08:00
GareArc 54b819709d
Merge branch '1.11.4-otel-telemetry-ee' into deploy/enterprise 2026-02-02 16:09:44 -08:00
GareArc 8fc0cbe20d
feat(enterprise): Add OTEL telemetry with slim traces, metrics, and structured logs
- Add EnterpriseOtelTrace handler with span emission for workflows and nodes
- Implement minimal-span strategy: slim spans + detailed companion logs
- Add deterministic span/trace IDs for cross-workflow trace correlation
- Add metric collection at 100% accuracy (counters & histograms)
- Add event handlers for app lifecycle and feedback telemetry
- Add cross-workflow trace linking with parent context propagation
- Add OTEL exporter with configurable sampling and privacy controls
- Wire enterprise telemetry into workflow execution pipeline
- Add telemetry configuration in enterprise configs
2026-02-02 15:50:43 -08:00
NFish 11959a2cfa Merge branch 'release/e-1.11.4' into deploy/enterprise 2026-01-30 15:36:11 +08:00
NFish c727d99e55
fix: hide invite button if current user is not workspace manager (#31742) 2026-01-30 15:35:11 +08:00
GareArc 915b4ce840
feat: Add parent trace context propagation for workflow-as-tool hierarchy
Enables distributed tracing for nested workflows across all trace providers
(Langfuse, LangSmith, community providers). When a workflow invokes another
workflow via workflow-as-tool, the child workflow now includes parent context
attributes that allow trace systems to reconstruct the full execution tree.

Changes:
- Add parent_trace_context field to WorkflowTool
- Set parent context in tool node when invoking workflow-as-tool
- Extract and pass parent context through app generator

This is a community enhancement (ungated) that improves distributed tracing
for all users. Parent context includes: trace_id, node_execution_id,
workflow_run_id, and app_id.
2026-01-29 20:05:11 -08:00
yunlu.wen af7eb70898 chore: upgrade deps, see pull #30976 2026-01-28 13:22:54 +08:00
yunlu.wen ffc18bf318 chore: upgrade deps, see pull #30976 2026-01-28 13:02:01 +08:00
Yunlu Wen 7623990f7b
chore: sync enterprise release (#31626)
Co-authored-by: zhsama <torvalds@linux.do>
2026-01-28 10:39:35 +08:00
NFish 0c4c912f8a
fix: enterprise CVE 2026 23864 (#31599) 2026-01-27 16:13:18 +08:00
NFish eba305b1c8 Merge branch 'fix/e-CVE-2026-23864' into deploy/enterprise 2026-01-27 16:06:56 +08:00
NFish bfa9cdf6fa fix: regenerate pnpm-lock.yaml 2026-01-27 16:06:42 +08:00
NFish cc661d793b Merge branch 'fix/e-CVE-2026-23864' into deploy/enterprise 2026-01-27 16:02:51 +08:00
NFish 4f27736b60 fix: update @types/react version in resolutions config field 2026-01-27 16:02:37 +08:00
NFish 7907ca698c Merge branch 'fix/e-CVE-2026-23864' into deploy/enterprise 2026-01-27 15:57:52 +08:00
NFish b5b82d0fa3 fix: CVE-2026-23864 for enterprise edtion 2026-01-27 15:57:21 +08:00
GareArc 6fd5df658c
fix: add TYPE_CHECKING import for Account type annotation 2026-01-26 16:08:09 -08:00
GareArc 69b11cc364
security: fix IDOR and privilege escalation in set_default_provider
- Add tenant_id verification to prevent IDOR attacks
- Add admin check for enterprise tenant-wide default changes
- Preserve non-enterprise behavior (users can set own defaults)
2026-01-26 16:01:06 -08:00
GareArc 57721225b9
fix: remove user_id filter when clearing default provider (enterprise only)
When setting a new default credential in enterprise mode, the code was
only clearing is_default for credentials matching the current user_id.
This caused issues when:
1. Enterprise credential A (synced with system user_id) was default
2. User sets local credential B as default
3. A still had is_default=true (different user_id)
4. Both A and B were considered defaults

The fix removes user_id from the filter only for enterprise deployments,
since enterprise credentials may have different user_id than local ones.
Non-enterprise behavior is unchanged to avoid breaking existing setups.

Fixes EE-1511
2026-01-26 15:43:13 -08:00
GareArc 68dfb3d4d9
feat: add redis mq for account deletion cleanup 2026-01-25 22:38:19 -08:00
Xiyuan Chen 7058de7a88
feat: implement workspace permission checks for member invitations an… (#31202) 2026-01-25 21:21:58 -08:00
NFish 9c75061bdd feat: ee workspace permission control (#30841) 2026-01-26 13:16:02 +08:00
wangxiaolei d7509e6cdd
fix: fix visibilityState event handle (#31354) 2026-01-22 11:25:20 +08:00
wangxiaolei 5cd11a0071
fix: remove _try_resolve_user_from_request (#31360) 2026-01-22 11:25:06 +08:00
wangxiaolei 37c2f3d4b6
fix: fix instance is not bind to session (#30913) 2026-01-21 17:05:13 +08:00
CodingOnStar fa56c53aaf fix(i18n): update model provider tip to only mention OpenAI in English, Japanese, and Simplified Chinese translations 2026-01-21 15:50:49 +08:00
CodingOnStar 500428331b chore(web): comment out unused provider entries in quota panel 2026-01-21 11:28:38 +08:00
wangxiaolei acfd34e876
fix: fix Cannot destructure property 'name' of 'value' as it is undef… (#30991) 2026-01-15 13:25:30 +08:00
-LAN- 036a7cf839
chore: bump version to 1.11.4 (#30961) 2026-01-15 11:40:33 +08:00
Stephen Zhou 86beacc64f
build: require node 24.13.0 (#30945) 2026-01-15 11:40:27 +08:00
wangxiaolei 2c6bd90d6f
fix: fix missing id and message_id (#31008) 2026-01-15 11:40:13 +08:00
Stephen Zhou f5aaa8f97e
fix: redirect after login (#30985) 2026-01-15 11:40:02 +08:00
-LAN- a22cc5bc5e
chore: Bump Dify version to 1.11.3 (#30903) 2026-01-13 17:49:13 +08:00
yyh 1fbdf6b465
refactor(web): setup status caching (#30798) 2026-01-13 16:59:49 +08:00
非法操作 491e1fd6a4
chore: case insensitive email (#29978)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: -LAN- <laipz8200@outlook.com>
2026-01-13 15:42:44 +08:00
青枕 0e33dfb5c2
fix: In the LLM model in dify, when a message is added, the first cli… (#29540)
Co-authored-by: 青枕 <qingzhen.ww@alibaba-inc.com>
2026-01-13 15:42:32 +08:00
lif ea708e7a32
fix(web): add null check for SSE stream bufferObj to prevent TypeError (#30131)
Signed-off-by: majiayu000 <1835304752@qq.com>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-13 15:40:43 +08:00
非法操作 c09e29c3f8
chore: rename the migration file (#30893) 2026-01-13 15:26:41 +08:00
wangxiaolei 2d53ba8671
fix: fix object value is optional should skip validate (#30894) 2026-01-13 15:21:06 +08:00
呆萌闷油瓶 9be863fefa
fix: missing content if assistant message with tool_calls (#30083)
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-13 12:46:33 +08:00
Coding On Star 8f43629cd8
fix(amplitude): update sessionReplaySampleRate default value to 0.5 (#30880)
Co-authored-by: CodingOnStar <hanxujiang@dify.ai>
2026-01-13 12:26:50 +08:00
wangxiaolei 9ee71902c1
fix: fix formatNumber accuracy (#30877) 2026-01-13 11:51:15 +08:00
hsiong a012c87445
fix: entrypoint.sh overrides NEXT_PUBLIC_TEXT_GENERATION_TIMEOUT_MS when TEXT_GENERATION_TIMEOUT_MS is unset (#30864) (#30865) 2026-01-13 10:12:51 +08:00
heyszt 450578d4c0
feat(ops): set root span kind for AliyunTrace to enable service-level metrics aggregation (#30728)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-13 10:12:00 +08:00