Skip to content

Commit

Permalink
docs: refine filter documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
suxb201 committed Dec 17, 2024
1 parent a8c472e commit 274027a
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 0 deletions.
6 changes: 6 additions & 0 deletions docs/src/en/filter/filter.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,22 @@ RedisShake provides various built-in filter rules that users can choose from acc
## Filtering Keys
RedisShake supports filtering by key name, key name prefixes, and suffixes. You can set the following options in the configuration file, for example:
```toml
[filter]
allow_keys = ["user:1001", "product:2001"] # allowed key names
allow_key_prefix = ["user:", "product:"] # allowed key name prefixes
allow_key_suffix = [":active", ":valid"] # allowed key name suffixes
allow_key_regex = [":\\d{11}:"] # allowed key name regex, 11-digit mobile phone number
block_keys = ["temp:1001", "cache:2001"] # blocked key names
block_key_prefix = ["temp:", "cache:"] # blocked key name prefixes
block_key_suffix = [":tmp", ":old"] # blocked key name suffixes
block_key_regex = [":test:\\d{11}:"] # blocked key name regex, 11-digit mobile phone number with "test" prefix
```
If these options are not set, all keys are allowed by default.

## Filtering Databases
You can specify allowed or blocked database numbers, for example:
```toml
[filter]
allow_db = [0, 1, 2]
block_db = [3, 4, 5]
```
Expand All @@ -27,6 +31,7 @@ If these options are not set, all databases are allowed by default.
## Filtering Commands
RedisShake allows you to filter specific Redis commands, for example:
```toml
[filter]
allow_command = ["GET", "SET"]
block_command = ["DEL", "FLUSHDB"]
```
Expand All @@ -37,6 +42,7 @@ You can also filter by command groups. Available command groups include:
SERVER, STRING, CLUSTER, CONNECTION, BITMAP, LIST, SORTED_SET, GENERIC, TRANSACTIONS, SCRIPTING, TAIRHASH, TAIRSTRING, TAIRZSET, GEO, HASH, HYPERLOGLOG, PUBSUB, SET, SENTINEL, STREAM
For example:
```toml
[filter]
allow_command_group = ["STRING", "HASH"]
block_command_group = ["SCRIPTING", "PUBSUB"]
```
6 changes: 6 additions & 0 deletions docs/src/zh/filter/filter.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,22 @@ RedisShake 提供了多种内置的过滤规则,用户可以根据需要选择
## 过滤 Key
RedisShake 支持通过键名、键名前缀和后缀进行过滤。您可以在配置文件中设置以下选项,例如:
```toml
[filter]
allow_keys = ["user:1001", "product:2001"] # 允许的键名
allow_key_prefix = ["user:", "product:"] # 允许的键名前缀
allow_key_suffix = [":active", ":valid"] # 允许的键名后缀
allow_key_regex = [":\\d{11}:"] # 允许的键名正则,11位手机号
block_keys = ["temp:1001", "cache:2001"] # 阻止的键名
block_key_prefix = ["temp:", "cache:"] # 阻止的键名前缀
block_key_suffix = [":tmp", ":old"] # 阻止的键名后缀
block_key_regex = [":test:\\d{11}:"] # 阻止的键名正则,11位手机号,前缀为test
```
如果不设置这些选项,默认允许所有键。

## 过滤数据库
您可以指定允许或阻止的数据库编号,例如:
```toml
[filter]
allow_db = [0, 1, 2]
block_db = [3, 4, 5]
```
Expand All @@ -27,6 +31,7 @@ block_db = [3, 4, 5]
## 过滤命令
RedisShake 允许您过滤特定的 Redis 命令,例如:
```toml
[filter]
allow_command = ["GET", "SET"]
block_command = ["DEL", "FLUSHDB"]
```
Expand All @@ -37,6 +42,7 @@ block_command = ["DEL", "FLUSHDB"]
SERVER, STRING, CLUSTER, CONNECTION, BITMAP, LIST, SORTED_SET, GENERIC, TRANSACTIONS, SCRIPTING, TAIRHASH, TAIRSTRING, TAIRZSET, GEO, HASH, HYPERLOGLOG, PUBSUB, SET, SENTINEL, STREAM
例如:
```toml
[filter]
allow_command_group = ["STRING", "HASH"]
block_command_group = ["SCRIPTING", "PUBSUB"]
```

0 comments on commit 274027a

Please sign in to comment.