Commit Graph

101 Commits

Author SHA1 Message Date
Nik Everett 1feea91734 Merge pull request elastic/elasticsearch#1235 from nik9000/more_remove_inject
Stop building query parsers with guice

Original commit: elastic/x-pack-elasticsearch@c621cfc94d
2016-01-18 17:40:04 -05:00
Jason Tedor 69ee9d77ad Reflect upstream load average change
This commit addresses the handling of load averages in Marvel due to
upstream changes in core Elasticsearch where the load average field was
changed from an array to an object.

Original commit: elastic/x-pack-elasticsearch@9ea57968bb
2016-01-18 15:50:17 -05:00
Nik Everett d713f203ad Fix compilation error after core shifted
Core is slowly removing raw types. Slowly. And one such removal broke shield.

Original commit: elastic/x-pack-elasticsearch@aa1b668c63
2016-01-18 10:37:39 -05:00
Tanguy Leroux 9e4686536a Marvel: Map renderers by object class rather than by name
Original commit: elastic/x-pack-elasticsearch@8f6dd0c530
2016-01-18 15:12:42 +01:00
Tanguy Leroux a30b894166 Marvel: Check that document count is the same on all data nodes
closes elastic/elasticsearch#1214

Original commit: elastic/x-pack-elasticsearch@1cf352fa3b
2016-01-15 10:51:16 +01:00
javanna 389b2be08a [TEST] blacklist get aliases test against closed indices
Shield expands wildcards to concrete names (aliases or indices) before each request gets executed in es core. It never resolves aliases to concrete indices though, as permissions may be set against aliases rather than indices. During this resolution, it also looks at the state of the indices and the current indices options (expand_wildcards) to expand only to indices with the relevant state. When it comes to aliases though, they may point to multiple indices each one having a different state, so it always expands ignoring expand_wildcards. At that point the request will contain the explicit name of the alias, no wildcards, thus the expand_wildcards option will have no effect in core. ignore_unavailable could be used instead when interacting with shield, which would affect how aliases are resolved to multiple indices. In this case we can only blacklist the test in shield, as it will return both the closed index and the open one.

Original commit: elastic/x-pack-elasticsearch@54c11dfc31
2016-01-14 17:20:23 +01:00
javanna af60f45c4a fix failing DefaultIndicesResolverTests due to upstream change
get aliases api returns now closed indices too by default

Original commit: elastic/x-pack-elasticsearch@d97e18cd71
2016-01-14 15:04:58 +01:00
Alexander Reelsen 9aa5c0ba62 Tests: Disabling Watcher in LdapUserSearchSessionFactoryTests
Due to lingering threads when shutting down when running this in CI
this disables watcher in this tests. It is really hard to reproduce
to get the correct order of start/stop. The reason here is, that watcher
is still starting and not finished, when stop is called on the plugin.

Original commit: elastic/x-pack-elasticsearch@2de85bcba6
2016-01-13 18:29:30 +01:00
Daniel Mitterdorfer 5a9289d777 Correct load average structure for NodeStatsRendererTests
In elastic/elasticsearchelastic/elasticsearch#15907, we changed the load average
structure to also include 5 and 15 minute load averages. This
commit adjusts the expected JSON structure for
NodeStatsRendererTests.

Original commit: elastic/x-pack-elasticsearch@59f6a1e9d9
2016-01-12 08:29:51 +01:00
Nik Everett b94670acc0 Remove serialVersionUID
It doesn't do anything and Elasticsearch will likely ban using it.

Original commit: elastic/x-pack-elasticsearch@c243c913c4
2016-01-11 13:34:05 -05:00
Simon Willnauer 07a4146068 Fix import after IndexingOperationListeners infrastructure cleanup in elasticsearch/15875
Original commit: elastic/x-pack-elasticsearch@aa1bc847eb
2016-01-10 20:23:33 +01:00
jaymode 94ce98ad9f always debug the user dn role mapping
When debugging role mapping it is useful to know the actual user DN, which is only logged
when something is actually mapped to the DN. Since this is logged at debug level, we should
always log it.

Original commit: elastic/x-pack-elasticsearch@b690c757d3
2016-01-08 14:32:22 -05:00
Jason Tedor 2b5c28242d Remove use of j.u.c.ThreadLocalRandom
This commit removes all uses of java.util.concurrent.ThreadLocalRandom
across the codebase.

Original commit: elastic/x-pack-elasticsearch@eca3701357
2016-01-08 12:21:30 -05:00
Nik Everett 2d50c77717 Merge pull request elastic/elasticsearch#1258 from nik9000/unneeded_suppress
Remove unneeded SuppressWarnings

Original commit: elastic/x-pack-elasticsearch@1c20a8c3fc
2016-01-08 11:21:28 -05:00
jaymode c5592ee3be add the ability to utilize load balancing and failover for ldap
Previously we only exposed the use of a single URL for LDAP realms, while the code supported
multiple URLs. Internally we always used a failover server set, which would have provided failover
to another LDAP server if multiple existed. This change introduces a new setting `load_balance.type`
on the realm that indicates the type of load balancing. Valid options are:

* `failover` - the first server in the list will be used until it fails and then additional servers will be tried until
one succeeds. The first successful server will be used from now on. This is the default.
* `round_robin` - continuously iterates through the list of servers for each new connection. If a server is down,
the iteration will continue until a successful connection is made. The downfall here is that the list does not
get reordered on a down server, so there is overhead for always trying the servers in order.
* `dns_failover` - This server set takes a single URL that uses a DNS that will resolve to multiple IP addresses.
Connections will be consistently attempted to servers in the order they are retrieved from the name service; there
is no re-ordering and the first successful connection will be used.
* `dns_round_robin` - This server set takes a single URL that uses a DNS that will resolve to multiple IP addresses.
The addresses retrieved from the name service will connected to in the same order as `round_robin`.

Closes elastic/elasticsearch#31

Original commit: elastic/x-pack-elasticsearch@9ce9a1bf23
2016-01-07 09:14:41 -05:00
Alexander Reelsen f68f9aa268 Watcher: Fix test failure by ensuring non-null argument for equality check
Original commit: elastic/x-pack-elasticsearch@b811dcdf7e
2016-01-07 15:09:38 +01:00
Alexander Reelsen 39403028db Watcher: Added missing equals/hashcode methods to EmailAttachments
In order to correctly check for equality in an EmailAction, all the email
attachments have to implement equals/hashCode methods.

This has already been added to the 2.x branch in elastic/x-pack@ebde22507f

Original commit: elastic/x-pack-elasticsearch@bb980ea934
2016-01-07 14:25:51 +01:00
Tanguy Leroux cdb3869b1b Marvel: Do not collect data in SecuredClientTests
closes elastic/elasticsearch#1242

Original commit: elastic/x-pack-elasticsearch@cd8f8ce2fa
2016-01-07 11:58:36 +01:00
Alexander Reelsen 75ab4f9470 Watcher: Allow for external email attachments
This feature is mainly done for the integration with the commercial reporting, but can be used
for anything else as well.

This adds a `attachments` to the email configuration, which can be used like this

```
"attachments" : {
  "some_id" : {
    "http" : {
      "request" : {
        "url" : "http://example.org/foo.pdf"
      }
    }
  },
  "other_id" : {
    "data" : {
      "format" : "json"
    }
  }
}
```

The main reason to pick this format is extensibility. If we would like to support another
attachment type, like an file reader, we could do so easily from an API point of view.

Closes elastic/elasticsearch#870

Original commit: elastic/x-pack-elasticsearch@66d14be965
2016-01-07 10:49:13 +01:00
Adrien Grand 2bab66dcb5 Remove warmers from the known actions.
Original commit: elastic/x-pack-elasticsearch@325f77518f
2016-01-07 10:30:35 +01:00
Tanguy Leroux 54215200ba Marvel: HttpExporter should not clean indices
This commit removes the current implementation in HttpExporter so that it does not automatically clean indices anymore.

Original commit: elastic/x-pack-elasticsearch@7d30338355
2016-01-07 10:05:02 +01:00
Tanguy Leroux 57b7c7eb85 Marvel: Automatic deletion of expired timestamped indices
closes elastic/elasticsearch#1057

Original commit: elastic/x-pack-elasticsearch@6cf24a0a0d
2016-01-07 10:05:02 +01:00
Alexander Reelsen 080c2afc55 Watcher: Allow execute Watch API fields in request params
In order to have a shortcut for the execution of a watch and
specifying the record_execution and ignore_condition booleans,
so are now supported in the HTTP request parameters as well.

Closes elastic/elasticsearch#918

Original commit: elastic/x-pack-elasticsearch@bed5da40b7
2016-01-07 10:00:11 +01:00
Nik Everett 38dcbc50b6 Remove unneeded SuppressWarnings
Original commit: elastic/x-pack-elasticsearch@46d86d555e
2016-01-06 20:07:27 -05:00
Alexander Reelsen 9108001c73 Watcher: Remove pre 2.0 compatibility code
This code is not needed anymore in any 2.x version.

Original commit: elastic/x-pack-elasticsearch@8346b0120e
2016-01-06 17:25:13 +01:00
Martijn van Groningen 996a9a9891 shield: add percolator query terms fields to the allowed fields if FLS is enabled
Fixes issue that came from upstream change elastic/elasticsearch#13646

Original commit: elastic/x-pack-elasticsearch@53f796c9c3
2016-01-06 17:04:59 +01:00
Martijn van Groningen 6f2208cc86 test: upstream changes for elastic/elasticsearch#13646
Original commit: elastic/x-pack-elasticsearch@0b2bff1b06
2016-01-06 16:09:25 +01:00
Alexander Reelsen 9709036024 Watcher: Adding PagerDuty Action
* This action enables sending notifications to pager duty services.
* Utilizes pager duty's REST API
* Similar to the `email`, `hipchat` and `slack` actions, multiple `pagerduty` accounts can be configured, each with its own Service API key
* A `pagerduty` account is roughly mapped to a service in your pagerduty service.
* `pagerduty` actions are associated with an account, or if not, their events will be sent via the default account.
* An incident can be acknowledged, resolved or triggered

Closes elastic/elasticsearch#492

Original commit: elastic/x-pack-elasticsearch@72cc21d119
2016-01-06 08:58:46 +01:00
Nik Everett de12d4b58d Stop building query parsers with guice
This is the fallout from
https://github.com/elastic/elasticsearch/pull/15761

Original commit: elastic/x-pack-elasticsearch@9509feb310
2016-01-05 13:53:40 -05:00
jaymode e8eb0fa312 test: only specify the XPackPlugin once
Original commit: elastic/x-pack-elasticsearch@46249d54c6
2016-01-05 13:37:43 -05:00
Igor Motov 852aac0b9c Add support for the task management framework
These changes are required to support elastic/elasticsearchelastic/elasticsearch#15347

Original commit: elastic/x-pack-elasticsearch@37adf4fc83
2016-01-05 11:09:31 -05:00
Simon Willnauer ebcca4f3c2 Prepare for removal of #getIndexTimeInMillis
In `https://github.com/elastic/elasticsearch/pull/14632/` IndexingStats#getIndexTimeInMillis()
has been removed and is superseeded by IndexingStats#getIndexTime() which is already avaliable

Original commit: elastic/x-pack-elasticsearch@2caba81352
2016-01-05 09:39:32 +01:00
Igor Motov c4569432d1 Fixes a race condition in HandshakeWaitingHandlerTests
Closes elastic/elasticsearch#1210

Original commit: elastic/x-pack-elasticsearch@bf130a969e
2016-01-04 11:46:53 -05:00
Tanguy Leroux 2cec08798b Marvel: Merge ClusterInfoCollector in ClusterStatsCollector
This commit merge the ClusterInfoCollector in the ClusterStatsCollector so that cluster stats are retrieved only once.

Original commit: elastic/x-pack-elasticsearch@fe70149210
2016-01-04 14:45:31 +01:00
Tanguy Leroux eeb5842730 Marvel: Use versioned index templates
This commit changes the templates so that they are now versionned using a number (starting from 1). This number is used in index templates names (ex: .marvel-es-data-1, .marvel-es-1) as well as in indices names (ex: .marvel-es-1-2015-12-30, .marvel-es-data-1).

If the template does not exist, it is created. Otherwise nothing (no update) is done.

Original commit: elastic/x-pack-elasticsearch@66c1a8bed0
2015-12-31 16:26:17 +01:00
Tanguy Leroux a931e4e0b8 Marvel: Add tribe nodes support
This commit enable tribe nodes support for Marvel. It avoid ElasticsearchSecurityException when a tribe node is connected to a cluster that has been configured for both Shield and Marvel by loading the MarvelShieldIntegration support on tribe node even if marvel.enabled is set to false. It also allows tribe nodes to be monitored using Marvel with their own marvel settings.

closes elastic/elasticsearch#1088

Original commit: elastic/x-pack-elasticsearch@e0401c1288
2015-12-30 12:20:49 +01:00
Alexander Reelsen d3ced7161b Watcher: Allow `url` as shortcut in requests
Instead of having to specify `scheme`, `host`, `port`, `path` and `params` each
one can now use the `url` field and specify something like `http://example.org/foo?bar=baz`

This works for HttpRequest and HttpRequestTemplate

Original commit: elastic/x-pack-elasticsearch@8c052cf419
2015-12-30 12:18:17 +01:00
Tanguy Leroux cc0933733c Marvel: Reimplement SecuredClient
closes elastic/elasticsearch#1150

i#Update after Uri's review

Original commit: elastic/x-pack-elasticsearch@2526dc9da1
2015-12-30 11:32:41 +01:00
Robert Muir 2655db3d72 remove outdated build.gradle parameter
Original commit: elastic/x-pack-elasticsearch@63bc9907e6
2015-12-29 09:25:34 -05:00
Adrien Grand fbe777005b Use currentName instead of text() to parse field names.
Original commit: elastic/x-pack-elasticsearch@f4b75c3f2d
2015-12-28 16:44:16 +01:00
Tanguy Leroux d904fa5931 Marvel: Restore cluster_state.nodes
Original commit: elastic/x-pack-elasticsearch@7cf33baf2a
2015-12-23 16:59:29 +01:00
Adrien Grand ff0217d80d Merge pull request elastic/elasticsearch#1153 from jpountz/remove/index_name_back_compat
x-pack sibling of elastic/elasticsearchelastic/elasticsearch#15488

Original commit: elastic/x-pack-elasticsearch@cccaee133b
2015-12-23 15:02:49 +01:00
Yannick Welsch 4ddd7af334 Fix issue where license metadata deserialization swallows other custom metadata
Closes elastic/elasticsearch#1190

Original commit: elastic/x-pack-elasticsearch@5c5280fee5
2015-12-22 15:49:25 +01:00
Alexander Reelsen 0cd636422c Watcher: Prevent double creation of node services
Because of specifying the concrete implementations in WatcherPlugin.nodeServices(),
all of those services got created twice for each node (guice requires the interface here).
This resulted in NPEs as the first instantiation did not run doStart() and thus had empty
settings, that resulted in a NPE.

Closes elastic/elasticsearch#1179

Original commit: elastic/x-pack-elasticsearch@c6a1f5093f
2015-12-22 11:29:04 +01:00
Adrien Grand dbc863add7 Upgrade to lucene-5.5.0-snapshot-1721183.
Original commit: elastic/x-pack-elasticsearch@2dea406d5f
2015-12-21 17:30:20 +01:00
Ryan Ernst c86e8b9c2e Remove wildcard imports
Original commit: elastic/x-pack-elasticsearch@65b2fee336
2015-12-18 14:15:06 -08:00
Robert Muir 114184b5dd disable license headers check for x-plugins, until we figure out what it should do
Original commit: elastic/x-pack-elasticsearch@48bc84865c
2015-12-18 13:27:52 -05:00
Simon Willnauer 1d95a7593f Merge pull request elastic/elasticsearch#1162 from s1monw/update_to_new_settings_infra
Upgrade X-Pack to new ClusterSettings infrastructure

Original commit: elastic/x-pack-elasticsearch@82df682838
2015-12-18 11:12:40 +01:00
Simon Willnauer 9713041fb4 Merge branch 'master' into update_to_new_settings_infra
Original commit: elastic/x-pack-elasticsearch@bf4eb0ef46
2015-12-18 10:21:34 +01:00
Martijn van Groningen de37a6e3ed shield: Enable fls and dls by default
* allow bulk requests with updates if fls/dls isn't configured for targetted index
* throw a hard error if the current call can't resolve an associated transport request
marvel: node stats collector should use the client instead of the internal apis, because otherwise the index searcher wrapper can't locate the transport request that is associated with current call and would then throw an exception, which then prevents the marvel agent from collecting stats.
* if both field or document level security is enabled then all forbidden operations should fail

Original commit: elastic/x-pack-elasticsearch@b2c40d6559
2015-12-18 10:16:08 +01:00