* Track user actions in the SIEM app
For now, we're tracking:
* Top navigation changes (`tab_X`)
* Opening a timeline (`open_timeline`)
* added type
* This seems to solve the 'yarn run build' issue
* Addressed comments
* Use the APP_ID from the top level
So far the groupby/agg name shown in the dropdowns and the name used for the ES config agg name has been the same.
This PR changes the behaviour to the following:
- group_by aggregation names will be left as original e.g. clientip, timestamp
- agg functions will be added to the end as a nested object e.g. doc.bytes.sent.sum and doc.bytes.sent.avg and duration.max
- the drop down display labels in the pickers in the wizard will continue to use the sql-like notation e.g. date_histogram(timestamp), terms(clientip), sum(doc.bytes.sent), max(duration)
- when auto-generating aggregation names, unsupported characters ([]>) will be removed.
This PR adds column headers to the Logs UI. The header row also contains a quick link to the column configuration flyout. The detail flyout link, which was previously coupled to the `message` field, is now an independent column at the last position.
closeselastic/kibana#35780closeselastic/kibana#36105
Adds support for a user-configured location name, so users can more easily differentiate their monitors if they're watching hosts across multiple locations.
* lazy load tooltip properties for Elasticsearch documents
* return with loadProps exception
* fix errors
* fix feature_tooltip tests
* return empty array instead of throw when target layer or feature can not be found
* Adding link-to page for resolving IP to Host Details
* Adding intl support
* Adding source provider for link to via IP
* removing Source.Provider in favor of useSource hook
* rollback yarn.lock changes
* rollback package.json changes
* Initial code to force collectors to indicate when they are ready
* Add and fix tests
* Remove debug
* Add ready check in api call
* Fix prettier complaints
* Return 503 if not all collectors are ready
* PR feedback
* Add retry logic for usage collection in the reporting tests
* Fix incorrect boomify usage
* Fix more issues with the tests
* Just add debug I guess
* More debug
* Try and handle this exception
* Try and make the tests more defensive and remove console logs
* Retry logic here too
* Debug for the reporting tests failure
* I don't like this, but lets see if it works
* Move the retry logic into the collector set directly
* Add support for this new collector
* Localize this
* This shouldn't be static on the class, but rather static for the entire runtime
This package publishes it's transpiled code in a dist directory without updating
the package.json's main to point to this file. Since we do not transpile node
modules we are updating the require statement to explicitly point to this
file.
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
Revamps the job creation step of the data frame wizard.
- Create & start buttons now have additional descriptions
- Adds a "copy to clipboard" button to copy a Kibana Dev Console statement of the job creation command to the clipboard
- Adds a progress bar once the job is started
- Adds a card which links to Kibana Discover if an index pattern was created for the job
- Hides the wizard's Previous button once the job is successfully created.
- Adds pivotAggsFieldSupport and pivotGroupByFieldSupport. These objects have a mapping of field_type -> array of supported_aggs and allow a better organization of available options in the dropdowns for group-by and aggs.
- The support for certain field_type/aggs combinations has been extended:
- value_count is available for every field
- IP fields are now available for group by and cardinality
- number and date support all aggregations
- _id, _type, _index fields are no longer available
- Removes unnecessary union type PivotAggSupportedAggs.
- Moves x-pack/plugins/ml/common/constants/field_types.js to field_types.ts. GitHub doesn't recognize it as a rename though because of TypeScript changes.
* supported features POC
* render point, line and polygon properties
* cleanup from merge with master
* line icon
* display button group for feature type styling
* fix vector_style tests
* remove unused function
* rename getSupportedFeatures to getSupportedShapeTypes and VECTOR_FEATURE_TYPE to VECTOR_SHAPE_TYPES
* review feedback
* display feature styles when user selects feature type
* create constants for geo_json types
* change line icon to line instead of rect
* add help function to avoid duplicate logic for isPointsOnly, isLineOnly, and isPolygonOnly
* add unit tests for _checkIfOnlyFeatureType
* Returning live data
* Adding TSVB data population
* adding tests
* Adding UI
* Adding rough draft of metrics control
* Breaking out metric component; adding useCallback to callbacks; adding intl strings
* seperating out form
* Break metrics form out; change to custom color picker; create custom color palette;
* fixing bug with color picker
* changes to color palette; fix callback issue
* Fixing count label
* Fix chart label to truncate
* Changing by to graph per
* Making the metric popover wider to ease field name truncation
* critical changes to the import order
* Changing metrics behavior
* Hide metrics when choosing document count
* Updating chart tooltip; fixing types;
* Setting intial state to open metrics; Tweaking toolbar sizes
* fixing linting issues
* Allow users to filter by a grouping by clicking on the title
* Change rate to rateMax; add rateMin and rateAvg; fix title text-align
* Use relative paths to fix base path bug
* fixing typescript errors; removing rateAvg and rateMin; removing extranious files;
* Fixing formatting issues
* Fixing i18n linting errors
* Changing to elastic-charts
* fixing typing errors with charts
* Moving afterKey out of URL to fix bug with pagination
* Adding support for multiple axises
* Adding tests for useMetricsExplorerData hook
* breaking up the charting code; removing multi-axis support; changing color palette to use blue and red for first two color
* Adding drop down menu to charts for filtering and linking to TSVB
* Adding more tests for useMetricsExplorerData hook; adding error message; adding chart options to non-groupby charts
* only display groupings that have the metric fields
* Refactor page level state into custom hook; add test for options handlers;
* Fixing linting
* removing color picker
* removing useInterval
* Changing group by to use the pills; Changing context menu button; adding icons to context menu.
* Adding test for color palette
* Adding test for createFormatterForMetric()
* removing tsx extension; adding tests for createMetricLabel()
* removing tsx extension; adding tests for createMetricLabel()
* re-organizing helpers
* Moving helpers from libs to helpers; adding test for metricToFormat
* Fixing bug in tsvb link fn; adding timeRange props; adding createTSVBLink() test
* fixing timeRange fixture import; fixing aria label for action button
* removing some unecessary useCallbacks
* Adding test for MetricsExplorerChartContextMenu component
* Fixing linting issues
* Optimizing test
* Adding empty prompts for no metrics and no data
* Removing duplicate sereis def
* tcs has lost it's mind so I had to copy enzyme_helpers.tsx into our plugin
* Appeasing prettier
* Update x-pack/plugins/infra/public/components/metrics_exploerer/metrics.tsx
Co-Authored-By: simianhacker <chris@chriscowan.us>
* fixing path typo
* Adding supportFiltering to dependicy; change options to be more specific
* remove typo
* Fixing typo
* Adding logColumns to source fixture; fixing typo
* Fixing path to be more sane
* Adding brushing to Metrics Explorer Charts
* [Maps] Show minusInCircle icon when layer has no data
* rename getTooltipContent so its less ambigiuos
* Update x-pack/plugins/maps/public/shared/layers/layer.js
Co-Authored-By: gchaps <33642766+gchaps@users.noreply.github.com>
* review feedback
* [Code] adjust setup guide
* [Code] Apply default search scope into fetching suggestions
* [Code] Refactor the search bar in the source view page to use the same searchbar in other pages
* [SR] Snapshot and restore plugin boilerplate (#32276)
* Initial plugin set up
* Set up client shell
* Add initial repository list routes
* Fix merge issues and some typings
* Decouple server from plugin.ts files, tighten up typings
* Use exported constant for required license
* Translate plugin name, more typings
* Fix more types, move list components under /home
* Remove unused var
* Change scss prefix
* Uncouple unmount logic from routing shim, and some other PR feedback
* [SR] Repository list and details UI (#33367)
* Initial pass at repositories list UI
* Add detail panel for file system repositories, and a generic detail panel with json settings view
* Add detail components for other types
* Add detail panel footer, rename `useStateValue` to `useAppState`
* Fix detail panel footer
* Fix unused vars
* PR feedback
* PR feedback
* [SR] Refactor proposal (#33690)
* Move app dependencies to its own context provider
* Add index.ts barrel file for common types
* Move Enums to constants.ts file
* Refactor function component using `React.FunctionComponent<Props>`
* Refactor service folder structure
* Fix type import
* Move REPOSITORY_DOC_PATHS from common to public constants
* Move AppCore and AppPlugins interfaces back to shim and re-export them from app types
* [SR] Create and edit repositories UI (#34020)
* Add routing and placeholder form
* Fix typings
* Set up edit repository route, and basic form UI
* Add typings for wrapCustomError, and copy extractCausedByChain from CCR wrapEsError
* Throw errors that are already boomified
* Create and edit for basic repository types (fs, url, source)
* Add repository verification UI to table and details
* Create and edit for plugin repository types (hdfs, azure, s3, gcs)
* Fix linting
* Fix test
* Fix test
* Remove unused import
* Fix duplicate i18n key
* Fix details opening on cancel edit, remove unnecessary Fragments, definition file for some EUI components to x-pack, rename saveError
* Remove breaks
* Adjust add and edit repo routes so they don't conflict with list route
* Add repo plugin and types doc links to form
* Bootstrap documentation service
* Bootstrap text service and replace RepositoryTypeName component with it
* Bootstrap breadcrumb service and replace usages
* Bootstrap httpService, remove chrome and http from app dependencies(!)
* Add request creator and replace all instances of useRequest and sendRequest with it
* Fix typo
* Simplify update repository and update repository setting methods
* Adjust copy
* Lint
* Remove unused var
* Remove unused import
* [SR] Add API for retrieving snapshots. (#34598)
* [SR] Single and multiple repository delete (#34593)
* Add single/multi repository delete API and UI
* Address PR feedback
* [SR] Add SnapshotTable and SnapshotDetails. (#34837)
* Remove associations between multiple repositories with a single snapshot.
* Retrieve complete snapshot details in getAllHandler.
* Fix cleanup function bug in useRequest hook.
* Fix bug in useRequest which prevented old data from being cleared when subsequent requests returned errors.
* Add initialValue config option to useRequest.
* Add formatDate service to text module.
* [SR] Fix linting and add (de)serialization for repositories (#35031)
* Fix eslint issues and add (de)serialization for repositories
* Add comment about flattening settings
* [SR] Surface repository errors and index failures more prominently (#35042)
* Add links to repositories from Snapshot Table and Snapshot Details.
- Rename services/breadcrumbs to services/navigation and add linkToRepository function.
- Refactor home component to update active tab when URL was changed.
* Add warning callout to let user know when their repositories contain errors.
* Sort failures by shard and add test for snapshot serialization.
* Sort failures and indices.
* Add filter for filtering snapshots by their repository.
* Surface states with humanized text, icons, and tooltips where necessary.
* Fix pluralization of seconds.
* Surface failures tab even if there are none.
- Display a '-' for missing times and durations.
- Create DataPlaceholder component.
* [SR] Polish repositories UX (#35123)
* Refactor repository detail panel to load repository based directly on route param.
* Display repository detail panel while table is loading.
* Make 'Edit repository' table action a link instead of a button.
* Render disabled EuiSelect as a readonly EuiFieldText.
* Prepend HDFS URI with hdfs:// protocol.
* Present scheme options for Read-Only URL repository as a select.
* [SR] Add client-side validation to repository form and link to snapshots from details (#35238)
* Add client side repository form validation, extract `flatten` into common lib
* Add snapshot count to repository details and link to snapshot list
* Reset validation when changing repository type
* Fix snapshot list filter deep linking for repository names with slashes and spaces
* Fix imports
* PR feedback
* [SR] Design and copywriting fixes (#35591)
* Split repository form into two steps; move `clean_settings.ts` to server
* Default to snapshots tab, adjust snapshot empty prompt, add app description
* Add minimum timeout to list view requests to avoid flicker, use EuiEmptyPrompt for loading screen, add doc link to settings step
* Add information about snapshots to delete repository behavior, add doc link for source only toggle, add size notation help text
* Add main doc link
* Copywriting and i18n fixes, and add some common settings to third party repo types
* Add fields to third party repo detail panel
* More copywriting fixes
* Use spinner for duration and end time if snapshotting is still in progress
* Show all repository type options, mark missing plugins
* Revert "Show all repository type options, mark missing plugins"
This reverts commit e34ee47cec.
* Fix space
* [SR] Add permissions UI and Cloud-specific repository type UI branch (#35833)
* Add missing permissions UI and cloud-specific repository type UI branch
* Add ES UI as owners of /snapshot_restore directory
* Add no repository types callout for Cloud edge case
* Redirect invalid section param to repositories
* Add warning empty prompt if all repositories have errrors
* Replace repository cards with EuiCard
* Add snapshot doc link to repository error empty prompt
* Remove auto-verification from list and get routes, add separate verification route, add manual verification to repository detail panel
* Update copy and remove obsolete test
* Remove unused scss files
* Final changes to repository cards
* use new condensed tabs
* pull button out of settings menu
* clean up global nav styles
* account for dark mode
* remove unnecessary styles
* move kql bar to relevant location
* tweak page header styles
* add border prop to HeaderPanel
* placeholder text updates
* fiddling with direction control visuals
* move kql back above kpis, per tudor
* change host table name to “all hosts”
* change direction select and tests (TY Garrett)
* rm console.log
* rm `EuiHorizontalRule` import
* sticky poc
* apply poc to all relevant pages
* general cleanup
* update snapshots
* Override EuiSuperDatePicker spacing bug
* restrict overview beats data to the last 24 hours
* garrett & tudor’s suggested changes
* overview data refresh on render, per garrett
* update tests and snapshots
* remove sticky at small bp and update tests
This exposes an API on the Kibana server object (old platform style) to define internal source configurations, which can not be edited by the user and take precedence above any stored configurations.
This creates a new telemetry usage collector, which can be extended for
other purposes, that adds `static_telemetry` usage by pulling directory from
`${KIBANA_CONFIG}/telemetry.yml` anything specified
under the `xpack.telemetry.usage` object.
For example, if the kibana.yml set:
```yaml
xpack.telemetry.usage:
object1:
active: true
field1: "value1"
object2:
field2: 123
```
then this would result in the usage object:
```json
{
"static_telemetry": {
"object1": {
"active": true,
"field1": "value1"
},
"object2": {
"field2": 123
}
}
}
```
* [xpack/encryptionKeys] use default keys when running from source
* add tests for the config schema with different contexts
* share the getConfigSchema helper
* await promises returned by expect().resolves
* tweak test naming
* use data-driven tests
* fix type error
* hide platform dependent config from snapshot
* [APM] Add Uptime link to Transaction action menu
Adds a link to the transaction menu to view a transaction (sample) in Uptime.
* Change label, make link optional, pass domain as search query to Uptime
- Change label to "View monitor status"
- Only show Uptime link when transaction.url is available
- Pass domain as search query to Uptime
* Use condition everywhere, fix TS error, use timestamp.us
- Use `condition` on all newly created action menu items, then filter out any falsy conditions
- Use timestamp.us instead of costlier new Date(transaction['@timestamp'])
- Fix TypeScript error in es fieldnames test
* Always construct uptimeLink, move condition to item itself for more consistency
* [Infra UI] Adding from Infra UI to Uptime
* Removed unused variable
* Adding tests for link generation
* Sometimes the IP address will be an array with [IPv4, IPv6]
* Ensuring only IPv4 addresses are returned; adding tests;
* only showing uptime link for host's with ip addresses
This moves the core Nav APIs from `ui/chrome` into the `ChromeService` in the new platform.
- `ChromeStart` now exposes a sub-service for reading and making limited updates to navlinks. These are powered by apps registered with the `ApplicationService` and filtered by UI Capabilities before being exposed by the `ChromeService`.
- The `header-global-nav` directive now consumes navlinks from the new platform.
- The `lastSubUrl` feature utilized by legacy apps has been refactored and will remain in `ui/chrome`. This feature utilizes the limited fields that `ChromeService` exposes to updates by outside code.
This change is the main blocker to moving the Chrome UI to the new platform. This will be necessary to enable the new platform to control top-level routing.