From 5630bc4f66c97ee8a09caf83d2062397a0c7d006 Mon Sep 17 00:00:00 2001 From: Jaime Soriano Pastor Date: Tue, 24 Mar 2026 15:46:03 +0100 Subject: [PATCH] [Fleet] Fix displayed log level when there is a policy override --- .../agent_logs/select_log_level.tsx | 2 +- .../components/agent_settings/index.test.tsx | 49 ++++++++++++++++++- 2 files changed, 49 insertions(+), 2 deletions(-) diff --git a/x-pack/platform/plugins/shared/fleet/public/applications/fleet/sections/agents/agent_details_page/components/agent_logs/select_log_level.tsx b/x-pack/platform/plugins/shared/fleet/public/applications/fleet/sections/agents/agent_details_page/components/agent_logs/select_log_level.tsx index 547f56646d8bb..c8f23cc6154a8 100644 --- a/x-pack/platform/plugins/shared/fleet/public/applications/fleet/sections/agents/agent_details_page/components/agent_logs/select_log_level.tsx +++ b/x-pack/platform/plugins/shared/fleet/public/applications/fleet/sections/agents/agent_details_page/components/agent_logs/select_log_level.tsx @@ -39,7 +39,7 @@ export const SelectLogLevel: React.FC<{ agent: Agent; agentPolicyLogLevel?: stri ); const [agentLogLevel, setAgentLogLevel] = useState( - agent.local_metadata?.elastic?.agent?.log_level ?? DEFAULT_LOG_LEVEL + agent.local_metadata?.elastic?.agent?.log_level ?? agentPolicyLogLevel ); const [selectedLogLevel, setSelectedLogLevel] = useState(agentLogLevel); diff --git a/x-pack/platform/plugins/shared/fleet/public/applications/fleet/sections/agents/agent_details_page/components/agent_settings/index.test.tsx b/x-pack/platform/plugins/shared/fleet/public/applications/fleet/sections/agents/agent_details_page/components/agent_settings/index.test.tsx index 80c00388e7f4d..339f39d8a25c5 100644 --- a/x-pack/platform/plugins/shared/fleet/public/applications/fleet/sections/agents/agent_details_page/components/agent_settings/index.test.tsx +++ b/x-pack/platform/plugins/shared/fleet/public/applications/fleet/sections/agents/agent_details_page/components/agent_settings/index.test.tsx @@ -97,7 +97,7 @@ describe('AgentSettings', () => { }, }); }; - it('should show log level dropdown with correct value', () => { + it('should show log level dropdown with correct value when agent has a per-agent override', () => { mockStartServices(); const result = renderComponent(); const logLevelDropdown = result.getByTestId('selectAgentLogLevel'); @@ -105,6 +105,53 @@ describe('AgentSettings', () => { expect(logLevelDropdown).toHaveDisplayValue('debug'); }); + it('should fall back to policy log level when agent has no per-agent override', () => { + mockStartServices(); + const renderer = createFleetTestRendererMock(); + const agent = { + id: 'agent1', + local_metadata: { elastic: { agent: { version: '8.15.0' } } }, + } as any; + const agentPolicy = { + id: 'policy1', + name: 'policy1', + revision: 1, + namespace: 'default', + updated_at: '2023-10-04T13:08:53.340Z', + updated_by: 'elastic', + data_streams: [], + is_managed: false, + is_default: false, + is_preconfigured: false, + advanced_settings: { agent_logging_level: 'warning' }, + } as any; + const result = renderer.render(); + expect(result.getByTestId('selectAgentLogLevel')).toHaveDisplayValue('warning'); + }); + + it('should fall back to info when agent has no per-agent override and policy has no log level set', () => { + mockStartServices(); + const renderer = createFleetTestRendererMock(); + const agent = { + id: 'agent1', + local_metadata: { elastic: { agent: { version: '8.15.0' } } }, + } as any; + const agentPolicy = { + id: 'policy1', + name: 'policy1', + revision: 1, + namespace: 'default', + updated_at: '2023-10-04T13:08:53.340Z', + updated_by: 'elastic', + data_streams: [], + is_managed: false, + is_default: false, + is_preconfigured: false, + } as any; + const result = renderer.render(); + expect(result.getByTestId('selectAgentLogLevel')).toHaveDisplayValue('info'); + }); + it('should hide reset log level button for agents version < 8.15.0', () => { mockStartServices(); const result = renderComponent();