Skip to content

Commit a5bdc23

Browse files
authored
Register system index descriptors through SystemIndexPlugin.getSystemIndexDescriptors (#1584)
1 parent 6685efd commit a5bdc23

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

alerting/src/main/kotlin/org/opensearch/alerting/AlertingPlugin.kt

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import org.opensearch.alerting.action.GetRemoteIndexesAction
1515
import org.opensearch.alerting.action.SearchEmailAccountAction
1616
import org.opensearch.alerting.action.SearchEmailGroupAction
1717
import org.opensearch.alerting.alerts.AlertIndices
18+
import org.opensearch.alerting.alerts.AlertIndices.Companion.ALL_ALERT_INDEX_PATTERN
1819
import org.opensearch.alerting.comments.CommentsIndices
1920
import org.opensearch.alerting.core.JobSweeper
2021
import org.opensearch.alerting.core.ScheduledJobIndices
@@ -103,6 +104,7 @@ import org.opensearch.commons.alerting.model.DocumentLevelTrigger
103104
import org.opensearch.commons.alerting.model.Monitor
104105
import org.opensearch.commons.alerting.model.QueryLevelTrigger
105106
import org.opensearch.commons.alerting.model.ScheduledJob
107+
import org.opensearch.commons.alerting.model.ScheduledJob.Companion.SCHEDULED_JOBS_INDEX
106108
import org.opensearch.commons.alerting.model.SearchInput
107109
import org.opensearch.commons.alerting.model.Workflow
108110
import org.opensearch.commons.alerting.model.remote.monitors.RemoteMonitorTrigger
@@ -114,6 +116,7 @@ import org.opensearch.core.xcontent.XContentParser
114116
import org.opensearch.env.Environment
115117
import org.opensearch.env.NodeEnvironment
116118
import org.opensearch.index.IndexModule
119+
import org.opensearch.indices.SystemIndexDescriptor
117120
import org.opensearch.monitor.jvm.JvmStats
118121
import org.opensearch.painless.spi.Allowlist
119122
import org.opensearch.painless.spi.AllowlistLoader
@@ -124,6 +127,7 @@ import org.opensearch.plugins.ExtensiblePlugin
124127
import org.opensearch.plugins.ReloadablePlugin
125128
import org.opensearch.plugins.ScriptPlugin
126129
import org.opensearch.plugins.SearchPlugin
130+
import org.opensearch.plugins.SystemIndexPlugin
127131
import org.opensearch.repositories.RepositoriesService
128132
import org.opensearch.rest.RestController
129133
import org.opensearch.rest.RestHandler
@@ -139,7 +143,8 @@ import java.util.function.Supplier
139143
* It also adds [Monitor.XCONTENT_REGISTRY], [SearchInput.XCONTENT_REGISTRY], [QueryLevelTrigger.XCONTENT_REGISTRY],
140144
* [BucketLevelTrigger.XCONTENT_REGISTRY], [ClusterMetricsInput.XCONTENT_REGISTRY] to the [NamedXContentRegistry] so that we are able to deserialize the custom named objects.
141145
*/
142-
internal class AlertingPlugin : PainlessExtension, ActionPlugin, ScriptPlugin, ReloadablePlugin, SearchPlugin, PercolatorPluginExt() {
146+
internal class AlertingPlugin : PainlessExtension, ActionPlugin, ScriptPlugin, ReloadablePlugin,
147+
SearchPlugin, SystemIndexPlugin, PercolatorPluginExt() {
143148

144149
override fun getContextAllowlists(): Map<ScriptContext<*>, List<Allowlist>> {
145150
val whitelist = AllowlistLoader.loadFromResourceFiles(javaClass, "org.opensearch.alerting.txt")
@@ -426,6 +431,13 @@ internal class AlertingPlugin : PainlessExtension, ActionPlugin, ScriptPlugin, R
426431
return listOf(TriggerScript.CONTEXT)
427432
}
428433

434+
override fun getSystemIndexDescriptors(settings: Settings): Collection<SystemIndexDescriptor> {
435+
return listOf(
436+
SystemIndexDescriptor(ALL_ALERT_INDEX_PATTERN, "Alerting Plugin system index pattern"),
437+
SystemIndexDescriptor(SCHEDULED_JOBS_INDEX, "Alerting Plugin Configuration index")
438+
)
439+
}
440+
429441
override fun reload(settings: Settings) {
430442
runner.reloadDestinationSettings(settings)
431443
}

0 commit comments

Comments
 (0)