influxdata / influxdata/kapacitor

Add in memory Key/Value cache that tasks can access.

Open
#981 1 comment 2 reactions 0 assignees View on GitHub
new-feature
Dominant language
Go
Stars
2.4k
Forks
479
Avg merge
4d 16h
Merged PRs (30d)
4

Description

It is a common for a task to want to be able to access non time series data. Providing a generic key value cache that tasks can access would fit many of these use cases.

A few uses cases that have come up:
- Checking quotas/thresholds.
- Silencing certain alerts by flagging them as in maintenance mode or the like.

Initial design seems like a key-value store that can be modified via the API and consumed in TICKscripts would be a good starting point.

A few questions:
- Should a task be able to write to the store or only read?
- If a task can write to a store should each task have its own store or should it be global/namespaced?

Seems like this might end up being similar to the Riemann Index, but maybe that is something else altogether. http://riemann.io/concepts.html I'll need to think on this somemore.

Contributor guide

Open the contributing guide

Research direction

No files, tests, or entry points are named, so begin by locating the API and TICKscript task-access paths. The design questions about read/write permissions and store scope must be resolved before done can mean an API-managed key-value store that tasks can consume.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
api, backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.