Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Log Explorer] Convert log explorer profile into standalone app #164493

Merged
merged 57 commits into from Aug 31, 2023
Merged
Show file tree
Hide file tree
Changes from 55 commits
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
fc04346
Rename the plugin
weltenwort Aug 17, 2023
3d077e2
Add observability_log_explorer plugin
weltenwort Aug 17, 2023
6b32955
Add obs log explorer server-side
weltenwort Aug 21, 2023
39b1440
Achieve basic log explorer rendering
weltenwort Aug 21, 2023
87cd1e5
Hide the nav entry for now
weltenwort Aug 22, 2023
4fee709
Wrap with obs page template
weltenwort Aug 22, 2023
15f9300
[CI] Auto-commit changed files from 'node scripts/lint_ts_projects --…
kibanamachine Aug 22, 2023
41de574
[CI] Auto-commit changed files from 'node scripts/generate codeowners'
kibanamachine Aug 22, 2023
a77ee87
[CI] Auto-commit changed files from 'node scripts/build_plugin_list_d…
kibanamachine Aug 22, 2023
6b24b5c
[CI] Auto-commit changed files from 'node scripts/eslint --no-cache -…
kibanamachine Aug 22, 2023
76ef9c9
Merge branch 'main' into log-explorer-app
weltenwort Aug 23, 2023
c676985
Make deep link searchable
weltenwort Aug 23, 2023
f5fb017
Add stateful log explorer link
weltenwort Aug 23, 2023
1d7ff78
Merge branch 'main' into log-explorer-app
weltenwort Aug 24, 2023
3e9f0c0
Add breadcrumbs
weltenwort Aug 24, 2023
c49a4d7
[CI] Auto-commit changed files from 'node scripts/lint_ts_projects --…
kibanamachine Aug 24, 2023
7904041
Fix filter control height and clipping
weltenwort Aug 24, 2023
eeeceac
Prevent enabling the search session service
weltenwort Aug 24, 2023
7067550
Add to serverless nav
weltenwort Aug 24, 2023
4198a44
Start to fix the functional tests
weltenwort Aug 24, 2023
b894bf9
[CI] Auto-commit changed files from 'node scripts/precommit_hook.js -…
kibanamachine Aug 24, 2023
f89e674
[CI] Auto-commit changed files from 'node scripts/lint_ts_projects --…
kibanamachine Aug 24, 2023
ebc7d26
Merge branch 'main' into log-explorer-app
weltenwort Aug 25, 2023
7277e81
Initialize bundle limits
weltenwort Aug 25, 2023
7ac3a3b
Fix stateful functional tests
weltenwort Aug 25, 2023
9482dcb
Fix serverless function tests
weltenwort Aug 25, 2023
d795bb3
Move nav link setting
weltenwort Aug 25, 2023
3b57f3a
Fix translation prefix
weltenwort Aug 25, 2023
b94f54b
Fix application usage tracking schema
weltenwort Aug 25, 2023
50e5dca
Fix functional test navigation method
weltenwort Aug 25, 2023
fe12e04
Restore global search test to pre-profile state
weltenwort Aug 25, 2023
14b886e
[CI] Auto-commit changed files from 'node scripts/lint_ts_projects --…
kibanamachine Aug 25, 2023
75030fa
Fix telemetry schema
weltenwort Aug 25, 2023
ba729df
Fix test for exposed config keys
weltenwort Aug 25, 2023
15a3548
Fix cypress e2e test
weltenwort Aug 25, 2023
d6d44a1
Merge branch 'main' into log-explorer-app
weltenwort Aug 25, 2023
4a1f197
Merge branch 'main' into log-explorer-app
weltenwort Aug 28, 2023
a321268
Fix serverless navigation tests
weltenwort Aug 28, 2023
2b2e27a
Merge branch 'main' into log-explorer-app
weltenwort Aug 28, 2023
5d07c88
Fix serverless log explorer nav tests
weltenwort Aug 28, 2023
4e9e6e7
Merge branch 'main' into log-explorer-app
weltenwort Aug 29, 2023
59cca71
Merge branch 'main' into log-explorer-app
weltenwort Aug 29, 2023
6a5c8d4
Temporarily skip tests relying on broken utils
weltenwort Aug 29, 2023
fbaf210
Adapt to upstream Discover component changes
weltenwort Aug 29, 2023
ec68602
Adapt functional tests to routing changes
weltenwort Aug 29, 2023
288a565
Merge branch 'main' into log-explorer-app
weltenwort Aug 29, 2023
b8f07e6
Unskip test
weltenwort Aug 29, 2023
d88e36e
Update x-pack/plugins/log_explorer/kibana.jsonc
weltenwort Aug 29, 2023
f983021
[CI] Auto-commit changed files from 'node scripts/lint_ts_projects --…
kibanamachine Aug 29, 2023
23d8879
Add a basic description to the plugin README
weltenwort Aug 29, 2023
7cf2129
Remove unused config types
weltenwort Aug 29, 2023
9906a21
[CI] Auto-commit changed files from 'node scripts/lint_ts_projects --…
kibanamachine Aug 29, 2023
204264c
Merge branch 'main' into log-explorer-app
weltenwort Aug 30, 2023
b192889
Add comment to conditional config key in test
weltenwort Aug 30, 2023
d8e572c
Remove superfluous test fixtures
weltenwort Aug 30, 2023
7fc1039
Merge branch 'main' into log-explorer-app
weltenwort Aug 31, 2023
b97c53d
Add beta badge to chrome
weltenwort Aug 31, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion .buildkite/ftr_configs.yml
Expand Up @@ -279,7 +279,6 @@ enabled:
- x-pack/test/functional/apps/data_views/config.ts
- x-pack/test/functional/apps/dev_tools/config.ts
- x-pack/test/functional/apps/discover/config.ts
- x-pack/test/functional/apps/discover_log_explorer/config.ts
- x-pack/test/functional/apps/graph/config.ts
- x-pack/test/functional/apps/grok_debugger/config.ts
- x-pack/test/functional/apps/home/config.ts
Expand Down Expand Up @@ -313,6 +312,7 @@ enabled:
- x-pack/test/functional/apps/ml/short_tests/config.ts
- x-pack/test/functional/apps/ml/stack_management_jobs/config.ts
- x-pack/test/functional/apps/monitoring/config.ts
- x-pack/test/functional/apps/observability_log_explorer/config.ts
- x-pack/test/functional/apps/remote_clusters/config.ts
- x-pack/test/functional/apps/reporting_management/config.ts
- x-pack/test/functional/apps/rollup_job/config.ts
Expand Down
2 changes: 1 addition & 1 deletion .buildkite/scripts/steps/storybooks/build_and_upload.ts
Expand Up @@ -26,7 +26,7 @@ const STORYBOOKS = [
'dashboard_enhanced',
'dashboard',
'data',
'discover_log_explorer',
'log_explorer',
'embeddable',
'expression_error',
'expression_image',
Expand Down
3 changes: 2 additions & 1 deletion .github/CODEOWNERS
Validating CODEOWNERS rules …
Expand Up @@ -329,7 +329,6 @@ packages/kbn-dev-utils @elastic/kibana-operations
examples/developer_examples @elastic/appex-sharedux
examples/discover_customization_examples @elastic/kibana-data-discovery
x-pack/plugins/discover_enhanced @elastic/kibana-data-discovery
x-pack/plugins/discover_log_explorer @elastic/infra-monitoring-ui
src/plugins/discover @elastic/kibana-data-discovery
packages/kbn-discover-utils @elastic/kibana-data-discovery
packages/kbn-doc-links @elastic/docs
Expand Down Expand Up @@ -472,6 +471,7 @@ packages/kbn-lint-ts-projects-cli @elastic/kibana-operations
x-pack/plugins/lists @elastic/security-detection-engine
examples/locator_examples @elastic/kibana-app-services
examples/locator_explorer @elastic/kibana-app-services
x-pack/plugins/log_explorer @elastic/infra-monitoring-ui
packages/kbn-logging @elastic/kibana-core
packages/kbn-logging-mocks @elastic/kibana-core
x-pack/plugins/logs_shared @elastic/infra-monitoring-ui
Expand Down Expand Up @@ -524,6 +524,7 @@ packages/kbn-object-versioning @elastic/appex-sharedux
x-pack/plugins/observability_ai_assistant @elastic/obs-ai-assistant
x-pack/packages/observability/alert_details @elastic/actionable-observability
x-pack/test/cases_api_integration/common/plugins/observability @elastic/response-ops
x-pack/plugins/observability_log_explorer @elastic/infra-monitoring-ui
x-pack/plugins/observability_onboarding @elastic/apm-ui
x-pack/plugins/observability @elastic/actionable-observability
x-pack/plugins/observability_shared @elastic/observability-ui
Expand Down
1 change: 0 additions & 1 deletion config/serverless.oblt.yml
Expand Up @@ -10,7 +10,6 @@ xpack.serverless.observability.enabled: true

## Configure plugins
xpack.infra.logs.app_target: discover
xpack.discoverLogExplorer.featureFlags.deepLinkVisible: true

## Set the home route
uiSettings.overrides.defaultRoute: /app/observability/landing
Expand Down
12 changes: 8 additions & 4 deletions docs/developer/plugin-list.asciidoc
Expand Up @@ -520,10 +520,6 @@ Plugin server-side only. Plugin has three main functions:
|Contains the enhancements to the OSS discover app.


|{kib-repo}blob/{branch}/x-pack/plugins/discover_log_explorer/README.md[discoverLogExplorer]
|This plugin registers a log-explorer profile using the Discover customization framework, offering several affordances specifically designed for log consumption.


|{kib-repo}blob/{branch}/x-pack/plugins/ecs_data_quality_dashboard/README.md[ecsDataQualityDashboard]
|This plugin implements (server) APIs used to render the content of the Data Quality dashboard.

Expand Down Expand Up @@ -632,6 +628,10 @@ the infrastructure monitoring use-case within Kibana.
using the CURL scripts in the scripts folder.


|{kib-repo}blob/{branch}/x-pack/plugins/log_explorer/README.md[logExplorer]
|This plugin provides a LogExplorer component using the Discover customization framework, offering several affordances specifically designed for log consumption.


|{kib-repo}blob/{branch}/x-pack/plugins/logs_shared/README.md[logsShared]
|Exposes the shared components and APIs to access and visualize logs.

Expand Down Expand Up @@ -669,6 +669,10 @@ Elastic.
|This document gives an overview of the features of the Observability AI Assistant at the time of writing, and how to use them. At a high level, the Observability AI Assistant offers contextual insights, and a chat functionality that we enrich with function calling, allowing the LLM to hook into the user's data. We also allow the LLM to store things it considers new information as embeddings into Elasticsearch, and query this knowledge base when it decides it needs more information, using ELSER.


|{kib-repo}blob/{branch}/x-pack/plugins/observability_log_explorer/README.md[observabilityLogExplorer]
|This plugin provides an app based on the LogExplorer component from the log_explorer plugin, but adds observability-specific affordances.


|{kib-repo}blob/{branch}/x-pack/plugins/observability_onboarding/README.md[observabilityOnboarding]
|This plugin provides an onboarding framework for observability solutions: Logs and APM.

Expand Down
3 changes: 2 additions & 1 deletion package.json
Expand Up @@ -374,7 +374,6 @@
"@kbn/developer-examples-plugin": "link:examples/developer_examples",
"@kbn/discover-customization-examples-plugin": "link:examples/discover_customization_examples",
"@kbn/discover-enhanced-plugin": "link:x-pack/plugins/discover_enhanced",
"@kbn/discover-log-explorer-plugin": "link:x-pack/plugins/discover_log_explorer",
"@kbn/discover-plugin": "link:src/plugins/discover",
"@kbn/discover-utils": "link:packages/kbn-discover-utils",
"@kbn/doc-links": "link:packages/kbn-doc-links",
Expand Down Expand Up @@ -494,6 +493,7 @@
"@kbn/lists-plugin": "link:x-pack/plugins/lists",
"@kbn/locator-examples-plugin": "link:examples/locator_examples",
"@kbn/locator-explorer-plugin": "link:examples/locator_explorer",
"@kbn/log-explorer-plugin": "link:x-pack/plugins/log_explorer",
"@kbn/logging": "link:packages/kbn-logging",
"@kbn/logging-mocks": "link:packages/kbn-logging-mocks",
"@kbn/logs-shared-plugin": "link:x-pack/plugins/logs_shared",
Expand Down Expand Up @@ -543,6 +543,7 @@
"@kbn/observability-ai-assistant-plugin": "link:x-pack/plugins/observability_ai_assistant",
"@kbn/observability-alert-details": "link:x-pack/packages/observability/alert_details",
"@kbn/observability-fixtures-plugin": "link:x-pack/test/cases_api_integration/common/plugins/observability",
"@kbn/observability-log-explorer-plugin": "link:x-pack/plugins/observability_log_explorer",
"@kbn/observability-onboarding-plugin": "link:x-pack/plugins/observability_onboarding",
"@kbn/observability-plugin": "link:x-pack/plugins/observability",
"@kbn/observability-shared-plugin": "link:x-pack/plugins/observability_shared",
Expand Down
2 changes: 2 additions & 0 deletions packages/deeplinks/observability/constants.ts
Expand Up @@ -8,6 +8,8 @@

export const LOGS_APP_ID = 'logs';

export const OBSERVABILITY_LOG_EXPLORER = 'observability-log-explorer';

export const OBSERVABILITY_OVERVIEW_APP_ID = 'observability-overview';

export const METRICS_APP_ID = 'metrics';
Expand Down
7 changes: 3 additions & 4 deletions packages/deeplinks/observability/deep_links.ts
Expand Up @@ -5,31 +5,31 @@
* in compliance with, at your election, the Elastic License 2.0 or the Server
* Side Public License, v 1.
*/
import { DISCOVER_APP_ID } from '@kbn/deeplinks-analytics';

import {
LOGS_APP_ID,
OBSERVABILITY_LOG_EXPLORER,
OBSERVABILITY_OVERVIEW_APP_ID,
METRICS_APP_ID,
APM_APP_ID,
OBSERVABILITY_ONBOARDING_APP_ID,
} from './constants';

type LogsApp = typeof LOGS_APP_ID;
type ObservabilityLogExplorerApp = typeof OBSERVABILITY_LOG_EXPLORER;
type ObservabilityOverviewApp = typeof OBSERVABILITY_OVERVIEW_APP_ID;
type MetricsApp = typeof METRICS_APP_ID;
type ApmApp = typeof APM_APP_ID;
type ObservabilityOnboardingApp = typeof OBSERVABILITY_ONBOARDING_APP_ID;

export type AppId =
| LogsApp
| ObservabilityLogExplorerApp
| ObservabilityOverviewApp
| ObservabilityOnboardingApp
| ApmApp
| MetricsApp;

export type DiscoverLogExplorerId = `${typeof DISCOVER_APP_ID}:log-explorer`;

export type LogsLinkId = 'log-categories' | 'settings' | 'anomalies' | 'stream';

export type ObservabilityOverviewLinkId =
Expand All @@ -55,7 +55,6 @@ export type LinkId = LogsLinkId | ObservabilityOverviewLinkId | MetricsLinkId |

export type DeepLinkId =
| AppId
| DiscoverLogExplorerId
| `${LogsApp}:${LogsLinkId}`
| `${ObservabilityOverviewApp}:${ObservabilityOverviewLinkId}`
| `${MetricsApp}:${MetricsLinkId}`
Expand Down
1 change: 0 additions & 1 deletion packages/deeplinks/observability/tsconfig.json
Expand Up @@ -16,6 +16,5 @@
"target/**/*"
],
"kbn_references": [
"@kbn/deeplinks-analytics",
]
}
5 changes: 3 additions & 2 deletions packages/kbn-optimizer/limits.yml
Expand Up @@ -28,15 +28,14 @@ pageLoadAssetSize:
dashboard: 82025
dashboardEnhanced: 65646
data: 454087
dataViewEditor: 13000
dataViewEditor: 28082
dataViewFieldEditor: 27000
dataViewManagement: 5000
dataViews: 47000
dataVisualizer: 27530
devTools: 38637
discover: 99999
discoverEnhanced: 42730
discoverLogExplorer: 39045
embeddable: 87309
embeddableEnhanced: 22107
enterpriseSearch: 50858
Expand Down Expand Up @@ -87,6 +86,7 @@ pageLoadAssetSize:
licenseManagement: 41817
licensing: 29004
lists: 22900
logExplorer: 39045
logsShared: 281060
logstash: 53548
management: 46112
Expand All @@ -99,6 +99,7 @@ pageLoadAssetSize:
noDataPage: 5000
observability: 115443
observabilityAIAssistant: 25000
observabilityLogExplorer: 23686
observabilityOnboarding: 19573
observabilityShared: 52256
osquery: 107090
Expand Down
2 changes: 1 addition & 1 deletion src/dev/storybook/aliases.ts
Expand Up @@ -27,7 +27,7 @@ export const storybookAliases = {
dashboard: 'src/plugins/dashboard/.storybook',
data: 'src/plugins/data/.storybook',
discover: 'src/plugins/discover/.storybook',
discover_log_explorer: 'x-pack/plugins/discover_log_explorer/.storybook',
log_explorer: 'x-pack/plugins/log_explorer/.storybook',
embeddable: 'src/plugins/embeddable/.storybook',
es_ui_shared: 'src/plugins/es_ui_shared/.storybook',
expression_error: 'src/plugins/expression_error/.storybook',
Expand Down
Expand Up @@ -154,6 +154,7 @@ export const applicationUsageSchema = {
maps: commonSchema,
ml: commonSchema,
monitoring: commonSchema,
'observability-log-explorer': commonSchema,
'observability-overview': commonSchema,
observabilityOnboarding: commonSchema,
observabilityAIAssistant: commonSchema,
Expand Down
131 changes: 131 additions & 0 deletions src/plugins/telemetry/schema/oss_plugins.json
Expand Up @@ -4587,6 +4587,137 @@
}
}
},
"observability-log-explorer": {
"properties": {
"appId": {
"type": "keyword",
"_meta": {
"description": "The application being tracked"
}
},
"viewId": {
"type": "keyword",
"_meta": {
"description": "Always `main`"
}
},
"clicks_total": {
"type": "long",
"_meta": {
"description": "General number of clicks in the application since we started counting them"
}
},
"clicks_7_days": {
"type": "long",
"_meta": {
"description": "General number of clicks in the application over the last 7 days"
}
},
"clicks_30_days": {
"type": "long",
"_meta": {
"description": "General number of clicks in the application over the last 30 days"
}
},
"clicks_90_days": {
"type": "long",
"_meta": {
"description": "General number of clicks in the application over the last 90 days"
}
},
"minutes_on_screen_total": {
"type": "float",
"_meta": {
"description": "Minutes the application is active and on-screen since we started counting them."
}
},
"minutes_on_screen_7_days": {
"type": "float",
"_meta": {
"description": "Minutes the application is active and on-screen over the last 7 days"
}
},
"minutes_on_screen_30_days": {
"type": "float",
"_meta": {
"description": "Minutes the application is active and on-screen over the last 30 days"
}
},
"minutes_on_screen_90_days": {
"type": "float",
"_meta": {
"description": "Minutes the application is active and on-screen over the last 90 days"
}
},
"views": {
"type": "array",
"items": {
"properties": {
"appId": {
"type": "keyword",
"_meta": {
"description": "The application being tracked"
}
},
"viewId": {
"type": "keyword",
"_meta": {
"description": "The application view being tracked"
}
},
"clicks_total": {
"type": "long",
"_meta": {
"description": "General number of clicks in the application sub view since we started counting them"
}
},
"clicks_7_days": {
"type": "long",
"_meta": {
"description": "General number of clicks in the active application sub view over the last 7 days"
}
},
"clicks_30_days": {
"type": "long",
"_meta": {
"description": "General number of clicks in the active application sub view over the last 30 days"
}
},
"clicks_90_days": {
"type": "long",
"_meta": {
"description": "General number of clicks in the active application sub view over the last 90 days"
}
},
"minutes_on_screen_total": {
"type": "float",
"_meta": {
"description": "Minutes the application sub view is active and on-screen since we started counting them."
}
},
"minutes_on_screen_7_days": {
"type": "float",
"_meta": {
"description": "Minutes the application is active and on-screen active application sub view over the last 7 days"
}
},
"minutes_on_screen_30_days": {
"type": "float",
"_meta": {
"description": "Minutes the application is active and on-screen active application sub view over the last 30 days"
}
},
"minutes_on_screen_90_days": {
"type": "float",
"_meta": {
"description": "Minutes the application is active and on-screen active application sub view over the last 90 days"
}
}
}
}
}
}
},
"observability-overview": {
"properties": {
"appId": {
Expand Down
Expand Up @@ -292,10 +292,7 @@ export default function ({ getService }: PluginFunctionalProviderContext) {
'xpack.observability.unsafe.alertDetails.observability.enabled (boolean)',
'xpack.observability.unsafe.thresholdRule.enabled (boolean)',
'xpack.observability_onboarding.ui.enabled (boolean)',
/**
* xpack.discoverLogExplorer.featureFlags is conditional and will never resolve if used in non-serverless environment
*/
'xpack.discoverLogExplorer.featureFlags.deepLinkVisible (any)',
'xpack.observabilityLogExplorer.navigation.showAppLink (any)', // conditional, is actually a boolean
];
// We don't assert that actualExposedConfigKeys and expectedExposedConfigKeys are equal, because test failure messages with large
// arrays are hard to grok. Instead, we take the difference between the two arrays and assert them separately, that way it's
Expand Down
6 changes: 4 additions & 2 deletions tsconfig.base.json
Expand Up @@ -652,8 +652,6 @@
"@kbn/discover-customization-examples-plugin/*": ["examples/discover_customization_examples/*"],
"@kbn/discover-enhanced-plugin": ["x-pack/plugins/discover_enhanced"],
"@kbn/discover-enhanced-plugin/*": ["x-pack/plugins/discover_enhanced/*"],
"@kbn/discover-log-explorer-plugin": ["x-pack/plugins/discover_log_explorer"],
"@kbn/discover-log-explorer-plugin/*": ["x-pack/plugins/discover_log_explorer/*"],
"@kbn/discover-plugin": ["src/plugins/discover"],
"@kbn/discover-plugin/*": ["src/plugins/discover/*"],
"@kbn/discover-utils": ["packages/kbn-discover-utils"],
Expand Down Expand Up @@ -938,6 +936,8 @@
"@kbn/locator-examples-plugin/*": ["examples/locator_examples/*"],
"@kbn/locator-explorer-plugin": ["examples/locator_explorer"],
"@kbn/locator-explorer-plugin/*": ["examples/locator_explorer/*"],
"@kbn/log-explorer-plugin": ["x-pack/plugins/log_explorer"],
"@kbn/log-explorer-plugin/*": ["x-pack/plugins/log_explorer/*"],
"@kbn/logging": ["packages/kbn-logging"],
"@kbn/logging/*": ["packages/kbn-logging/*"],
"@kbn/logging-mocks": ["packages/kbn-logging-mocks"],
Expand Down Expand Up @@ -1042,6 +1042,8 @@
"@kbn/observability-alert-details/*": ["x-pack/packages/observability/alert_details/*"],
"@kbn/observability-fixtures-plugin": ["x-pack/test/cases_api_integration/common/plugins/observability"],
"@kbn/observability-fixtures-plugin/*": ["x-pack/test/cases_api_integration/common/plugins/observability/*"],
"@kbn/observability-log-explorer-plugin": ["x-pack/plugins/observability_log_explorer"],
"@kbn/observability-log-explorer-plugin/*": ["x-pack/plugins/observability_log_explorer/*"],
"@kbn/observability-onboarding-plugin": ["x-pack/plugins/observability_onboarding"],
"@kbn/observability-onboarding-plugin/*": ["x-pack/plugins/observability_onboarding/*"],
"@kbn/observability-plugin": ["x-pack/plugins/observability"],
Expand Down