Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Z
zmops-test
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
sanshi
zmops-test
Commits
a1bd955d
Commit
a1bd955d
authored
Dec 18, 2019
by
sanshi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
告警控制
parent
d5bcacb5
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
98 additions
and
10 deletions
+98
-10
test_problem_acknowledge.py
WorkCase/API/Problem/test_problem_acknowledge.py
+46
-10
problem.py
WorkData/Zabbix/problem.py
+52
-0
No files found.
WorkCase/API/Problem/test_problem_acknowledge.py
View file @
a1bd955d
...
...
@@ -17,6 +17,7 @@ from WorkData.Zabbix.hosts import DataHosts
from
WorkData.Zabbix.events
import
DataEvents
from
WorkData.Zabbix.items
import
DataItems
from
WorkData.Zabbix.functions
import
DataFunctions
from
WorkData.Zabbix.problem
import
DataProblem
from
WorkCase
import
CaseBase
...
...
@@ -60,6 +61,9 @@ class TestProblemAcknowledge(object):
session
=
UtilsDataBase
()
.
conn_mysql
(
db_url
=
cls
.
db_url
,
db_port
=
cls
.
db_port
,
db_base
=
cls
.
db_base
,
db_user
=
cls
.
db_user
,
db_pw
=
cls
.
db_pw
)
DataEvents
()
.
delete_like_name
(
session
=
session
,
name
=
cls
.
base_name
)
session
=
UtilsDataBase
()
.
conn_mysql
(
db_url
=
cls
.
db_url
,
db_port
=
cls
.
db_port
,
db_base
=
cls
.
db_base
,
db_user
=
cls
.
db_user
,
db_pw
=
cls
.
db_pw
)
DataProblem
()
.
delete_like_name
(
session
=
session
,
name
=
cls
.
base_name
)
@classmethod
def
teardown_class
(
cls
):
cls
.
log
.
debug
(
"结束执行测试套件......."
)
...
...
@@ -101,6 +105,12 @@ class TestProblemAcknowledge(object):
sql
=
DataEvents
()
.
select_all_from_allKeys
(
session
=
session
,
eventid
=
eventid
,
objectid
=
objectid
)
return
sql
@allure.step
(
"查询表:problem"
)
def
select_problem
(
self
,
eventid
=
None
):
session
=
self
.
db_session
()
sql
=
DataProblem
()
.
select_all_from_allKeys
(
session
=
session
,
eventid
=
eventid
)
return
sql
@allure.step
(
"查询表:items"
)
def
select_items
(
self
,
hostid
=
None
):
session
=
self
.
db_session
()
...
...
@@ -119,6 +129,9 @@ class TestProblemAcknowledge(object):
session
=
self
.
db_session
()
sql
=
DataEvents
()
.
insert_one
(
session
,
eventid
=
eventid
,
source
=
source
,
_object
=
_object
,
objectid
=
objectid
,
clock
=
clock
,
value
=
value
,
acknowledged
=
acknowledged
,
ns
=
ns
,
name
=
name
,
severity
=
severity
)
DataProblem
()
.
insert_one
(
session
,
eventid
=
eventid
,
source
=
source
,
_object
=
_object
,
objectid
=
objectid
,
clock
=
clock
,
r_eventid
=
None
,
r_clock
=
0
,
r_ns
=
0
,
correlationid
=
0
,
userid
=
0
,
acknowledged
=
acknowledged
,
ns
=
ns
,
name
=
name
,
severity
=
severity
)
return
sql
@allure.step
(
"断言返回结果:校验排序"
)
...
...
@@ -204,11 +217,34 @@ class TestProblemAcknowledge(object):
return
self
.
eventid
@allure.step
(
"校验告警状态"
)
def
check_sql
(
self
,
eventid
):
def
check_sql
(
self
,
eventid
,
action
):
time
.
sleep
(
30
)
if
action
==
1
:
sql
=
self
.
select_events
(
eventid
=
eventid
)
assert
sql
!=
[]
for
x
,
y
in
enumerate
(
sql
):
assert
y
.
acknowledged
==
0
assert
x
==
0
sql
=
self
.
select_problem
(
eventid
=
eventid
)
assert
sql
!=
[]
for
x
,
y
in
enumerate
(
sql
):
assert
y
.
acknowledged
==
0
assert
y
.
r_clock
!=
0
assert
x
==
0
else
:
sql
=
self
.
select_events
(
eventid
=
eventid
)
assert
sql
!=
[]
for
x
,
y
in
enumerate
(
sql
):
assert
y
.
acknowledged
==
1
assert
x
==
0
sql
=
self
.
select_problem
(
eventid
=
eventid
)
assert
sql
!=
[]
for
x
,
y
in
enumerate
(
sql
):
assert
y
.
acknowledged
==
1
assert
y
.
r_clock
==
0
assert
x
==
0
@allure.title
(
"problem.acknowledge:action为空,返回异常"
)
...
...
@@ -234,7 +270,7 @@ class TestProblemAcknowledge(object):
self
.
case_create
(
num
=
"03"
,
objectid
=
self
.
triggers_ids
[
0
],
acknowledged
=
0
)
response
=
self
.
problem_acknowledge
(
eventids
=
[
self
.
eventid
],
action
=
1
)
self
.
check_code
(
response
=
response
,
code
=
0
)
# self.check_sql(eventid=self.eventid
)
self
.
check_sql
(
eventid
=
self
.
eventid
,
action
=
1
)
@allure.title
(
"problem.acknowledge:action=2 忽略一个告警"
)
@allure.story
(
"告警忽略/关闭:action=2 忽略一个告警"
)
...
...
@@ -243,7 +279,7 @@ class TestProblemAcknowledge(object):
self
.
case_create
(
num
=
"04"
,
objectid
=
self
.
triggers_ids
[
0
],
acknowledged
=
0
)
response
=
self
.
problem_acknowledge
(
eventids
=
[
self
.
eventid
],
action
=
2
)
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
check_sql
(
eventid
=
self
.
eventid
)
self
.
check_sql
(
eventid
=
self
.
eventid
,
action
=
2
)
@allure.title
(
"problem.acknowledge:action=1 关闭多个告警"
)
@allure.story
(
"告警忽略/关闭:action=1 关闭多个告警"
)
...
...
@@ -254,9 +290,9 @@ class TestProblemAcknowledge(object):
eventid_3
=
self
.
case_create
(
num
=
"053"
,
objectid
=
self
.
triggers_ids
[
2
],
acknowledged
=
0
)
response
=
self
.
problem_acknowledge
(
eventids
=
[
eventid_1
,
eventid_2
,
eventid_3
],
action
=
1
)
self
.
check_code
(
response
=
response
,
code
=
0
)
# self.check_sql(eventid=eventid_
1)
# self.check_sql(eventid=eventid_2
)
# self.check_sql(eventid=eventid_3
)
self
.
check_sql
(
eventid
=
eventid_1
,
action
=
1
)
self
.
check_sql
(
eventid
=
eventid_2
,
action
=
1
)
self
.
check_sql
(
eventid
=
eventid_3
,
action
=
1
)
@allure.title
(
"problem.acknowledge:action=2 忽略多个告警"
)
@allure.story
(
"告警忽略/关闭:action=2 忽略多个告警"
)
...
...
@@ -267,9 +303,9 @@ class TestProblemAcknowledge(object):
eventid_3
=
self
.
case_create
(
num
=
"063"
,
objectid
=
self
.
triggers_ids
[
2
],
acknowledged
=
0
)
response
=
self
.
problem_acknowledge
(
eventids
=
[
eventid_1
,
eventid_2
,
eventid_3
],
action
=
2
)
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
check_sql
(
eventid
=
eventid_1
)
self
.
check_sql
(
eventid
=
eventid_2
)
self
.
check_sql
(
eventid
=
eventid_3
)
self
.
check_sql
(
eventid
=
eventid_1
,
action
=
2
)
self
.
check_sql
(
eventid
=
eventid_2
,
action
=
2
)
self
.
check_sql
(
eventid
=
eventid_3
,
action
=
2
)
if
__name__
==
"__main__"
:
...
...
@@ -286,4 +322,4 @@ if __name__ == "__main__":
# a = TestProblemAcknowledge()
# a.setup_class()
# a.test_case_0
4
()
# a.test_case_0
3
()
WorkData/Zabbix/problem.py
View file @
a1bd955d
...
...
@@ -90,3 +90,55 @@ class DataProblem(object):
self
.
log
.
error
(
error
)
session
.
close
()
return
error
def
insert_one
(
self
,
session
,
eventid
=
None
,
source
=
None
,
_object
=
None
,
objectid
=
None
,
clock
=
None
,
r_eventid
=
None
,
r_clock
=
None
,
r_ns
=
None
,
correlationid
=
None
,
userid
=
None
,
acknowledged
=
None
,
ns
=
None
,
name
=
None
,
severity
=
None
):
"""
:param session: 指针
:param eventid:
:param source:
:param _object:
:param objectid:
:param clock:
:param r_eventid:
:param r_clock:
:param r_ns:
:param correlationid:
:param userid:
:param acknowledged:
:param ns:
:param name:
:param severity:
:return:
"""
self
.
log
.
debug
(
"新增表数据:"
)
try
:
base
=
UtilsDataBase
()
base
.
add_param
(
_key
=
"eventid"
,
value
=
eventid
)
base
.
add_param
(
_key
=
"source"
,
value
=
source
)
base
.
add_param
(
_key
=
"object"
,
value
=
_object
)
base
.
add_param
(
_key
=
"objectid"
,
value
=
objectid
)
base
.
add_param
(
_key
=
"clock"
,
value
=
clock
)
base
.
add_param
(
_key
=
"ns"
,
value
=
ns
)
base
.
add_param
(
_key
=
"r_eventid"
,
value
=
r_eventid
)
base
.
add_param
(
_key
=
"r_clock"
,
value
=
r_clock
)
base
.
add_param
(
_key
=
"r_ns"
,
value
=
r_ns
)
base
.
add_param
(
_key
=
"correlationid"
,
value
=
correlationid
)
base
.
add_param
(
_key
=
"userid"
,
value
=
userid
)
base
.
add_param
(
_key
=
"name"
,
value
=
name
)
base
.
add_param
(
_key
=
"acknowledged"
,
value
=
acknowledged
)
base
.
add_param
(
_key
=
"severity"
,
value
=
severity
)
sql_rep
=
self
.
table
(
**
base
.
param
)
session
.
add
(
sql_rep
)
session
.
commit
()
eventid
=
sql_rep
.
eventid
self
.
log
.
debug
(
"新增的problem:
%
s"
%
eventid
)
session
.
close
()
return
eventid
except
UtilsDataBase
()
.
errors
as
error
:
self
.
log
.
error
(
"异常:"
)
self
.
log
.
error
(
error
)
session
.
close
()
return
error
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment