* chore(NA): add log options to config yml
* chore(NA): remove unwanted option from config declaration
* chore(NA): add the bootstrap for the logging rotate feature
* feat(NA): base interface setup for log rotation feature
* docs(NA): add documentation for the new logging rotate options. chore(NA): added new schema validations
* chore(NA): base lifecycle methods and logic
* feat(NA): monitor logic for log rotate feature
* fix(NA): basic log rotation lifecycle
* chore(NA): fix typo on config file
* feat(NA): add rotate files feature to log rotator
* chore(NA): fix log rotate config
* chore(NA): some tests to try logging rotate lifecycle
* feat(NA): correct log rotation logic
* fix(NA): lifecycle for the log rotator
* test(NA): add a test case
* chore(NA): correctly add the new defaults to the config schema
* test(NA): change dir generation for test
* chore(NA): mock log rotate for logging service test
* test(NA): fix temp dir permission issue
* test(NA): try to fix test
* chore(NA): remove usage of mkdtemp
* refact(NA): feature logging rotation reimplementation in order to make it work across platforms
* fix(NA): bug on file size monitor handle
* fix(NA): remove wrong commented out code
* chore(NA): correctly identify if we should use polling
* chore(NA): fix some code comment
* refact(NA): minor implementation details
* chore(NA): change the order of logging mix
* test(NA): add some more test cases
* test(NA): add the majority of the test cases
* test(NA): add last test case
* test(NA): fallback conditions
* chore(NA): add logging rotate config keys to the docker image
* chore(NA): move logging.rotate.enable setting to enabled
* chore(NA): clarify documentation for logging rotate
* chore(NA): use regular instead of logWithMetadata
* chore(NA): move chokidar to a prod dep
* chore(NA): add log explaining why we had fallback to use polling
* test(NA): fix unit tests
* test(NA): fix unit tests
* chore(NA): correctly place this.running condition
* chore(NA): remove redundant call
* fix(NA): log filename containing numbers would produce invalid sorting
* chore(NA): remove existsSync function call from readRotatedFilesMetadata function
* chore(NA): Update docs/setup/settings.asciidoc
Co-Authored-By: Tyler Smalley <tylersmalley@me.com>
* chore(NA): Update docs/setup/settings.asciidoc
Co-Authored-By: Tyler Smalley <tylersmalley@me.com>
* chore(NA): Update docs/setup/settings.asciidoc
Co-Authored-By: Tyler Smalley <tylersmalley@me.com>
* chore(NA): Update docs/setup/settings.asciidoc
Co-Authored-By: Tyler Smalley <tylersmalley@me.com>
* chore(na): update src/legacy/server/logging/rotate/index.js
Co-Authored-By: Tyler Smalley <tylersmalley@me.com>
* chore(NA): remove unused config line from docker vars
* chore(NA): update documentation to include info about non exact limits
* chore(NA): remove redudant if clause
* fix(NA): correctly work with new keepFiles limit after start
* fix(NA): warning log for logging rotate
* chore(NA): replace logwithmetadate with log
* docs(NA): correct log to right terms
* docs(NA): add comment about usage of slice(-1)
* refact(NA): changing polling interval from seconds to milliseconds
* docs(NA): fix comments for shouldRotate method
* chore(NA): update src/legacy/server/logging/rotate/log_rotator.js
Co-Authored-By: Mikhail Shustov <restrry@gmail.com>
* chore(NA): update src/legacy/server/logging/rotate/log_rotator.js
Co-Authored-By: Mikhail Shustov <restrry@gmail.com>
* refact(NA): small change
* refact(NA): bound stop
* refact(NA): shouldUsePolling test function
* refact(NA): move named truncate function to delete
* refact(NA): typescript conversion
* chore(NA): type update for log rotation index file
* docs(NA): add experimental tag on docs
* chore(NA): add call protection of clearTimeout
* refact(NA): cleanup comments and wrong added logs plus inline config
* chore(NA): replace ts-ignore by non null assertion operator
* docs(NA): extend documentation for _renameRotatedFilesByOne call
* chore(NA): fix type problems for process.emit on nodejs
At least for kibana-oss 7.4, this is how I can access Kibana logs.
The file `/var/log/kibana` is not created and if I set it as a log file, kibana does not have permission to write there.
See also:
https://github.com/elastic/kibana/issues/6579
* Added base folder structure for Newsfeed plugin
* Added base folders for lib and component
* Added newsfeed button to navigation controls on the right side
* add getApi() to return api data observable (#49581)
* Added flyout base body and provided EuiHeaderAlert component inside the newsfeed plugin
* Moved newsfeed plugin to OSS and added for the styles purpose new folder for legacy plugin 'newsfeed' with the same id to support this
* Added subscribe on fetch newsfeed change
* Add NewsfeedApiDriver class (#49710)
* add NewsfeedApiDriver class
* fix xpack prefix
* add corner case handling
* Added data binding to the ui
* added EuiHeaderAlert style overrides (#49739)
* Fixed due to comments on PR
* add missing fields to NewsfeedItem and FetchResult
* fix templating of service url
* gracefully handle temporary request failure
* Mapped missing fields for data and badge
* Fixed typos issues
* integrate i18n.getLocale()
* allow service url root to be changed in dev mode
* replace a lot of consts with config
* fix flyout height (#49809)
* Add "error" field to FetchResult: Error | null
* simplify fetch error handling
* Do not store hash for items that are filtered out
* add expireOn in case it is useful to UI
* always use staging url for dev config
* unit test for newsfeed api driver
* simplify modelItems
* Fixed eslint errors
* Fixed label translations
* Add unit test for concatenating the stored hashes with the new
* add newsfeed to i18n.json
* Fixed expression error
* --wip-- [skip ci]
* fix parse error
* fix test
* test(newsfeed): Added testing endpoint which simulates the Elastic Newsfeed for consumption in functional tests
* add tests for getApi()
* add tests for getApi
* Added no news page
* fix fetch not happening after page refresh with sessionStorage primed
* test(newsfeed): Added testing endpoint which simulates the Elastic Newsfeed for consumption in functional tests
* Added loading screen
* Small fixes due to comments
* Fixed issue with stop fetching news on error catch
* test(newsfeed): Configure FTS to point newsfeed to the simulated newsfeed endpoit
* Fixed browser error message: Invariant Violation: [React Intl] Could not find required `intl` object. <IntlProvider> needs to exist in the component ancestry.
* Fixed typo issue in label name
* polish the code changes
* Add simple jest/enzyme tests for the components
* honor utc format
* Filter pre-published items
* Fall back to en
* retry tests
* comment clarfication
* Setup newsfeed service fixture from test/common/config
* Added base functional tests for newsfeed functionality
* valid urlroot is for prod
* add documentation for the supported enabled setting
* more urlRoot
* --wip-- [skip ci]
* add the before for fn
* add ui_capabilties test
* update jest snapshot
* Fixed failing test
* finish newsfeed error functional test
* include ui_capability config
* error case testing in ci group 6
* refactor(newsfeed): moved newsfeed api call so that it is done before its use
* code polish
* enabled newsfeed_err test in CI
* [csp] reject legacy browsers by default
The csp.strict config is now enabled by default, so legacy browsers like
IE11 will not be able to access Kibana unless the deployment has
explicitly enabled it.
* docs: csp.strict breaking change
* configurable global socket timeouts
* update snapshots
* update tests
* add test
* add test
* add test
* happy path
* test happy path
* docs
* stop server after
* [DOCS] Add brew install instructions. Closes#38220
* Link fix
* Removed inline notes from index
* Fixed table format
* Updated with tap changes
* Comments from Deb
* Adjusting production setup instructions as a result of Spaces/RBAC
* Update docs/setup/production.asciidoc
Co-Authored-By: Larry Gregory <lgregorydev@gmail.com>
* csp: warn legacy browsers that do not support CSP
The new csp.warnLegacyBrowsers configuration is enabled by default, and
it shows a warning message to any legacy browser when they access Kibana
to indicate that they are not enforcing the basic security protections
of the current install.
The protections check is the same as csp.strict, so this feature is
designed to be used as an alternative to aid in BWC. When csp.strict is
enabled, warnLegacyBrowsers is effectively ignored.
* fix ChromeService tests
* more test fixes
* csp injectvars in legacy test bundle
* update warning text and make it translatable
* no need to warn in legacy browser unit tests
* tests for chrome legacy browser warning
* document legacy browser warning breaking change
* update csp warning toast message
* add period, remove dev code
A content security policy is a great addition to the protections built
into Kibana, but it's not effective in older browsers (like IE11) that
do not enforce the policy.
When CSP strict mode is enabled, right before the Kibana app is
bootstrapped, a basic safety check is performed to see if "naked" inline
scripts are rejected. If inline scripting is allowed by the browser,
then an error message is presented to the user and Kibana never attempts
to bootstrap.
* csp: nonce and unsafe-eval for scripts
To kick things off, a rudimentary CSP implementation only allows
dynamically loading new JavaScript if it includes an associated nonce
that is generated on every load of the app.
A more sophisticated content security policy is necessary, particularly
one that bans eval for scripts, but one step at a time.
* img-src is not necessary if the goal is not to restrict
* configurable CSP owned by security team
* smoke test
* remove x-content-security-policy
* document csp.rules
* fix tsconfig for test
* switch integration test back to regular js
* stop looking for tsconfig in test
* grrr, linting errors not caught by precommit
* docs: people -> you for consistency sake
Co-Authored-By: epixa <court@epixa.com>
* Disabling TLSv1 from being enabled by default
* Adding breaking change docs
* Update docs/migration/migrate_7_0.asciidoc
Co-Authored-By: kobelb <brandon.kobel@gmail.com>
* Using the schema defaults
* Fixing type definitions
* Adjusting logic for no supported protocols
* Adding minSize: 1 to the supported protocols
* Add a note about index migrations to the kibana setup docs
* Tewak the migrations asciidocs for clarity
* docs: refine saved object migration details
Breaking down the migration process into sections helps people find
and link to relevant information more easily.
The focus is on ongoing maintenance of Kibana, whereas the initial new
experience in 6.5.0 is treated as a note of clarification.
Error handling should be expanded in the future to include details about
specific known error cases.
* Adding option to always present the certificate when connecting to ES
* Updating docs
* Adding some more tests
* Adding alwaysPresentCertificate option to monitoring
* [config] logging.useUTC -> logging.timezone
* docs
* [env] exit if starting as root
* fix import path
* add link and timezone example
* Revert "[env] exit if starting as root"
This reverts commit f6e9090833a5180fe360a9ff54543c37c0ca3a58.
* Add clarification for server.ssl.supportedProtocols setting
Added clarification that the setting has to be an array. With the current wording you can assume that you can just add it as a simple string.
* Update settings.asciidoc
* Update settings.asciidoc
extra dot
* Update config schema to allow map.tilemap & map.regionmap
* Inject map.regionmap & map.tilemap. Fall back to top-level config declarations if needed
* Warn user on use of legacy map config vals
* Don't create default map objects for deprecated entries. Add notes indicating top-level objects are deprecated
* Update map references in docs
* Shuffle map configurations in docs to be grouped together
* add logQueries to docs
* remove extra space
* logQuerie => logQueries
* better working
* use code font for logging.verbose and true, remove x-pack in front of monitoring
It is not very useful to have:
* shardTimeout disabled if requestTimeout is enabled (means infinite es overruns)
* shardTimeout > requestTimeout if both enabled (means finite es overruns)
* shardTimeout < requestTimeout if both enabled (means partial results from es?)
The only option that really makes sense is to have shardTimeout === requestTimeout, so that's what I've done here.
* [server/rewriteBasePath] add option to enable basePath rewriting
* [server/rewriteBasePath/docs] end sentences with periods
* [server/rewriteBasePath] simplify Joi schema a smidge
* [server/rewriteBasePath] rename test file to match source
* [server/rewriteBasePath] initialize server in before/after hooks
* [server/rewriteBasePath] rephrase deprecation warning
* [server/config/schema] verify that non-strings are not accepted for basePath
* [server/config/schema] toss a trailing comma in there