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

Release 1.3.15.0 #262

Closed
wants to merge 36 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
5bd89bf
Upgrade to OpenSearch 1.3.3
lukas-vlcek Jun 15, 2022
91bc668
Release 1.3.3.0
lukas-vlcek Jun 15, 2022
ce76f21
Add link to OpenSearch Node filters docs
lukas-vlcek Jun 28, 2022
302889f
chore: bump OpenSearch from 1.3.3 to 1.3.4
greut Jul 15, 2022
d2a0aee
chore: bump OpenSearch from 1.3.4 to 1.3.5
greut Sep 2, 2022
183d700
Release 1.3.5.0
lukas-vlcek Sep 5, 2022
fb6e47f
chore: bump OpenSearch from 1.3.5 to 1.3.6
greut Oct 7, 2022
9125b1e
Release 1.3.6.0
lukas-vlcek Oct 10, 2022
b28a471
Release 1.3.7.0
sastorsl Dec 14, 2022
67c2449
Release 1.3.7.0
lukas-vlcek Dec 19, 2022
7e2072c
Upgrade to OpenSearch 1.3.8
lukas-vlcek Mar 3, 2023
f529f14
Release 1.3.8.0
lukas-vlcek Mar 3, 2023
5119c45
Bump tim-actions/get-pr-commits from 1.1.0 to 1.2.0
dependabot[bot] Mar 7, 2023
34f4214
Bump actions/checkout from 2 to 3
dependabot[bot] Mar 7, 2023
2b944b2
Bump prometheus.simpleclient to 0.16.0
lukas-vlcek Mar 7, 2023
f8bc56e
Bump actions/setup-java from 1 to 3 (#155)
dependabot[bot] Mar 7, 2023
cd0ec32
Upgrade to OpenSearch 1.3.9
lukas-vlcek Mar 20, 2023
ed5d4c0
Release 1.3.9.0
lukas-vlcek Mar 20, 2023
d240166
Bump tim-actions/get-pr-commits from 1.2.0 to 1.3.0
dependabot[bot] May 22, 2023
379c905
Upgrade to OpenSearch 1.3.10.0
lukas-vlcek May 23, 2023
f3ce811
Introduce indices filter
Apr 7, 2023
cbe7d67
Release 1.3.10.0
lukas-vlcek May 23, 2023
743dce4
Upgrade to OpenSearch 1.3.11
lukas-vlcek Jul 6, 2023
6000136
Release 1.3.11.0
lukas-vlcek Jul 6, 2023
432bdef
Fix a long form DCO commit example
lukas-vlcek Jul 19, 2023
c1b00be
Upgrade to OpenSearch 1.3.12
lukas-vlcek Aug 30, 2023
6eea023
Release 1.3.12.0
lukas-vlcek Aug 31, 2023
0d54240
Bump actions/checkout from 3 to 4
dependabot[bot] Sep 11, 2023
13558b2
Upgrade to OpenSearch 1.3.13
lukas-vlcek Sep 27, 2023
526c4eb
Release 1.3.13.0
lukas-vlcek Sep 27, 2023
3002168
Bump actions/setup-java from 3 to 4
dependabot[bot] Dec 4, 2023
d544f53
Upgrade to OpenSearch 1.3.14
lukas-vlcek Dec 20, 2023
4700520
Release 1.3.14.0
lukas-vlcek Dec 20, 2023
92844a1
Bump tim-actions/get-pr-commits from 1.3.0 to 1.3.1
dependabot[bot] Mar 4, 2024
9825612
Upgrade to OpenSearch 1.3.15
lukas-vlcek Apr 5, 2024
b2394eb
Release 1.3.15.0
lukas-vlcek Apr 5, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,11 @@ jobs:
contents: read

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v1
uses: actions/setup-java@v4
with:
distribution: "adopt"
java-version: ${{ matrix.java }}

- name: Build and Run Tests
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/dco.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
steps:
- name: Get PR Commits
id: 'get-pr-commits'
uses: tim-actions/get-pr-commits@v1.1.0
uses: tim-actions/get-pr-commits@v1.3.1
with:
token: ${{ secrets.GITHUB_TOKEN }}
- name: DCO Check
Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ Each commit must include a DCO which looks like this
Signed-off-by: Jane Smith <[email protected]>
```

You may type this line on your own when writing your commit messages. However, if your user.name and user.email are set in your git configs, you can use `-s` or `– – signoff` to add the `Signed-off-by` line to the end of the commit message.
You may type this line on your own when writing your commit messages. However, if your user.name and user.email are set in your git configs, you can use `-s` or `--signoff` to add the `Signed-off-by` line to the end of the commit message.

## Finding contributions to work on
Looking at the existing issues is a great way to find something to contribute on. As our projects, by default, use the default GitHub issue labels (enhancement/bug/duplicate/help wanted/invalid/question/wontfix), looking at any 'help wanted' issues is a great place to start.
Expand Down
62 changes: 55 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,12 +38,25 @@ This plugin was started as a fork of [Prometheus exporter for Elasticsearch®](h

## Compatibility Matrix

| OpenSearch | Plugin | Release date |
|-----------:|--------:|-------------:|
| 1.3.2 | 1.3.2.0 | May 10, 2022 |
| 1.3.1 | 1.3.1.0 | Apr 08, 2022 |
| 1.3.0 | 1.3.0.0 | Mar 22, 2022 |
| <= 1.2.4 | (*) | (*) |
| OpenSearch | Plugin | Release date |
|-----------:|---------:|-------------:|
| 1.3.15 | 1.3.15.0 | Apr 05, 2024 |
| 1.3.14 | 1.3.14.0 | Dec 20, 2023 |
| 1.3.13 | 1.3.13.0 | Sep 27, 2023 |
| 1.3.12 | 1.3.12.0 | Aug 31, 2023 |
| 1.3.11 | 1.3.11.0 | Jul 06, 2023 |
| 1.3.10 | 1.3.10.0 | May 23, 2023 |
| 1.3.9 | 1.3.9.0 | Mar 20, 2023 |
| 1.3.8 | 1.3.8.0 | Mar 03, 2023 |
| 1.3.7 | 1.3.7.0 | Dec 19, 2022 |
| 1.3.6 | 1.3.6.0 | Oct 10, 2022 |
| 1.3.5 | 1.3.5.0 | Sep 05, 2022 |
| 1.3.4 | 1.3.4.0 | Jul 15, 2022 |
| 1.3.3 | 1.3.3.0 | Jun 15, 2022 |
| 1.3.2 | 1.3.2.0 | May 10, 2022 |
| 1.3.1 | 1.3.1.0 | Apr 08, 2022 |
| 1.3.0 | 1.3.0.0 | Mar 22, 2022 |
| <= 1.2.4 | (*) | (*) |

_(*) If you are looking for plugin releases supporting earlier (`<= 1.2.4`) OpenSearch versions please visit
<https://github.com/aparo/opensearch-prometheus-exporter/releases>._
Expand All @@ -54,7 +67,7 @@ You need to install the plugin on every OpenSearch node that will be scraped by

To **install** the plugin:

`./bin/opensearch-plugin install https://github.com/aiven/prometheus-exporter-plugin-for-opensearch/releases/download/1.3.2.0/prometheus-exporter-1.3.2.0.zip`
`./bin/opensearch-plugin install https://github.com/aiven/prometheus-exporter-plugin-for-opensearch/releases/download/1.3.15.0/prometheus-exporter-1.3.15.0.zip`

To **remove** the plugin.

Expand Down Expand Up @@ -105,13 +118,48 @@ Metrics include statistics about individual OpenSearch nodes.
By default, only statistics from the node that received the request are included.

Prometheus exporter can be configured to include statistics from other nodes as well.
This filter is directly utilizing OpenSearch [Node filters](https://opensearch.org/docs/latest/opensearch/rest-api/nodes-apis/index/#node-filters) feature.
Default value: `"_local"`.

For example to get stats for all cluster nodes from any node use settings:
```
prometheus.nodes.filter: "_all"
```

#### Indices filter

Prometheus exporter can be configured to filter indices statistics from selected indices.
To target all indices, use "" or * or _all or null.
Default value: `""`.

For example to filter indices statistics:
```
prometheus.indices_filter.selected_indices: "log-*,*log,*log*,log*-test"
```

Users can select which option for filtering indices statistics.
Default value: `"STRICT_EXPAND_OPEN_FORBID_CLOSED"`.

For example to select an option:
```
prometheus.indices_filter.selected_option: "LENIENT_EXPAND_OPEN"
```
Here is a list of indices options available for selection
```
STRICT_EXPAND_OPEN: indices options that requires every specified index to exist, expands wildcards only to open indices and allows that no indices are resolved from wildcard expressions (not returning an error).
STRICT_EXPAND_OPEN_HIDDEN: indices options that requires every specified index to exist, expands wildcards only to open indices, includes hidden indices, and allows that no indices are resolved from wildcard expressions (not returning an error).
STRICT_EXPAND_OPEN_FORBID_CLOSED: indices options that requires every specified index to exist, expands wildcards only to open indices, allows that no indices are resolved from wildcard expressions (not returning an error) and forbids the use of closed indices by throwing an error.
STRICT_EXPAND_OPEN_HIDDEN_FORBID_CLOSED: indices options that requires every specified index to exist, expands wildcards only to open indices, includes hidden indices, and allows that no indices are resolved from wildcard expressions (not returning an error) and forbids the use of closed indices by throwing an error.
STRICT_EXPAND_OPEN_FORBID_CLOSED_IGNORE_THROTTLED: indices options that requires every specified index to exist, expands wildcards only to open indices, allows that no indices are resolved from wildcard expressions (not returning an error), forbids the use of closed indices by throwing an error and ignores indices that are throttled.
STRICT_EXPAND_OPEN_CLOSED: indices option that requires every specified index to exist, expands wildcards to both open and closed indices and allows that no indices are resolved from wildcard expressions (not returning an error).
STRICT_EXPAND_OPEN_CLOSED_HIDDEN: indices option that requires every specified index to exist, expands wildcards to both open and closed indices, includes hidden indices, and allows that no indices are resolved from wildcard expressions (not returning an error).
STRICT_SINGLE_INDEX_NO_EXPAND_FORBID_CLOSED: indices option that requires each specified index or alias to exist, doesn't expand wildcards and throws error if any of the aliases resolves to multiple indices.
LENIENT_EXPAND_OPEN: indices options that ignores unavailable indices, expands wildcards only to open indices and allows that no indices are resolved from wildcard expressions (not returning an error).
LENIENT_EXPAND_OPEN_HIDDEN: indices options that ignores unavailable indices, expands wildcards to open and hidden indices, and allows that no indices are resolved from wildcard expressions (not returning an error).
LENIENT_EXPAND_OPEN_CLOSED: indices options that ignores unavailable indices, expands wildcards to both open and closed indices and allows that no indices are resolved from wildcard expressions (not returning an error).
LENIENT_EXPAND_OPEN_CLOSED_HIDDEN: indices options that ignores unavailable indices, expands wildcards to all open and closed indices and allows that no indices are resolved from wildcard expressions (not returning an error).
```

## Usage

Metrics are directly available at:
Expand Down
86 changes: 41 additions & 45 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -3,49 +3,8 @@ import org.opensearch.gradle.test.RestIntegTestTask
import java.util.regex.Matcher
import java.util.regex.Pattern

apply plugin: 'java'
apply plugin: 'idea'
apply plugin: 'opensearch.opensearchplugin'
apply plugin: 'opensearch.yaml-rest-test'

def pluginName = pluginName
def pluginDescription = pluginDescription
//def projectPath = 'org.opensearch'
//def pathToPlugin = 'path.to.plugin'
def pluginClassName = pluginClassname

//tasks.register("preparePluginPathDirs") {
// mustRunAfter clean
// doLast {
// def newPath = pathToPlugin.replace(".", "/")
// mkdir "src/main/java/org/opensearch/$newPath"
// mkdir "src/test/java/org/opensearch/$newPath"
// mkdir "src/yamlRestTest/java/org/opensearch/$newPath"
// }
//}

opensearchplugin {
name pluginName
description pluginDescription
// classname "${projectPath}.${pathToPlugin}.${pluginClassName}"
classname pluginClassName
licenseFile rootProject.file('LICENSE.txt')
noticeFile rootProject.file('NOTICE.txt')
}

// thirdparty audit needs can be enabled
thirdPartyAudit.enabled = false

// This requires an additional Jar not published as part of build-tools
loggerUsageCheck.enabled = false

// No need to validate pom, as we do not upload to maven/sonatype
validateNebulaPom.enabled = false

buildscript {

ext {

// Four {digit(s)} concatenated with a "." followed by -rc{digit(s)}
// Examples: 1.0.0.1-rc2, 2.10.4.0-rc5
// Group (3) refers to the last .{digit{(s)} pattern (this is what we want to remove for OpS version)
Expand Down Expand Up @@ -75,25 +34,56 @@ buildscript {

versions = [
"opensearch": opensearch_version,
"prometheus": "0.15.0"
"prometheus": "0.16.0"
]
}

repositories {
mavenLocal()
maven { url "https://aws.oss.sonatype.org/content/repositories/releases" }
maven { url "https://aws.oss.sonatype.org/content/repositories/snapshots" }
mavenCentral()
maven { url "https://plugins.gradle.org/m2/" }
jcenter()
}

dependencies {
classpath "org.opensearch.gradle:build-tools:${versions.opensearch}"
}
}

apply plugin: 'java'
apply plugin: 'idea'
apply plugin: 'opensearch.opensearchplugin'
apply plugin: 'opensearch.yaml-rest-test'
//apply plugin: 'checkstyle'

def pluginName = pluginName
def pluginDescription = pluginDescription
//def projectPath = 'org.opensearch'
//def pathToPlugin = 'path.to.plugin'
def pluginClassName = pluginClassname

opensearchplugin {
name pluginName
description pluginDescription
// classname "${projectPath}.${pathToPlugin}.${pluginClassName}"
classname pluginClassName
licenseFile rootProject.file('LICENSE.txt')
noticeFile rootProject.file('NOTICE.txt')
}

// thirdparty audit needs can be enabled
thirdPartyAudit.enabled = false

// This requires an additional Jar not published as part of build-tools
loggerUsageCheck.enabled = false

// No need to validate pom, as we do not upload to maven/sonatype
validateNebulaPom.enabled = false

repositories {
mavenLocal()
maven { url "https://aws.oss.sonatype.org/content/repositories/releases" }
maven { url "https://aws.oss.sonatype.org/content/repositories/snapshots" }
mavenCentral()
maven { url "https://plugins.gradle.org/m2/" }
Expand All @@ -105,8 +95,14 @@ dependencies {
// See https://docs.gradle.org/6.8.1/userguide/java_plugin.html#sec:java_plugin_and_dependency_management
// compile "io.prometheus:simpleclient:${versions.prometheus}"
// compile "io.prometheus:simpleclient_common:${versions.prometheus}"
implementation group: 'io.prometheus', name: 'simpleclient', version: '0.15.0'
implementation group: 'io.prometheus', name: 'simpleclient_common', version: '0.15.0'
implementation group: 'io.prometheus', name: 'simpleclient', version: '0.16.0'
implementation group: 'io.prometheus', name: 'simpleclient_common', version: '0.16.0'
}

restResources {
restApi {
includeCore '_common', 'cat', 'cluster', 'nodes', 'indices', 'index'
}
}

test {
Expand Down
Loading
Loading