Merge "Add add_anomaly_rule to venusclient"

This commit is contained in:
Zuul
2023-09-14 06:27:19 +00:00
committed by Gerrit Code Review
2 changed files with 48 additions and 0 deletions

View File

@@ -27,6 +27,23 @@ class AnomalyManager(basemodels.BaseModelManager):
base_url = "anomaly"
resource_class = LogAnomaly
def add_anomaly_rule(self, title, desc, keyword, log_type, module):
url = '/v1/anomaly/rule'
body = {
'title': title,
'desc': desc,
'keyword': keyword,
'log_type': log_type,
'module': module
}
try:
resp, body = self.api.json_request('POST', url, body=body)
return body
except Exception as e:
raise RuntimeError(str(e))
def rule_list(self, title='', desc='', keyword='',
log_type='', module_name='', host_name='',
page_num=1, page_size=10):

View File

@@ -12,6 +12,37 @@
# License for the specific language governing permissions and limitations
# under the License.
from venusclient.common import cliutils as utils
@utils.arg('--title',
metavar='<title>',
dest='title',
help='The title of anomaly rule, required')
@utils.arg('--desc',
metavar='<desc>',
dest='desc',
help='The description of anomaly rule, required')
@utils.arg('--keyword',
metavar='<keyword>',
dest='keyword',
help='Keyword, only support exact-match at present, required')
@utils.arg('--log_type',
metavar='<log_type>',
dest='log_type',
help='The type of log, flog is platform log, and slog is operate '
'system log, required')
@utils.arg('--module',
metavar='<module>',
dest='module',
help='Application module or service, required')
def do_add_anomaly_rule(cs, args):
"""add an anomaly rule"""
endpoint = cs.anomaly.add_anomaly_rule(args.title, args.desc, args.keyword,
args.log_type, args.module)
print(endpoint)
return endpoint
def do_rule_list(cs, args):
"""get anomaly rule list"""