Skip to content

Commit 446e039

Browse files
author
sourabh
committed
updating assertion messages
1 parent 558ddf8 commit 446e039

File tree

2 files changed

+53
-52
lines changed

2 files changed

+53
-52
lines changed

cloudwatchevents/test/test-guardduty-benchmark.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ def __init__(self, source_category, finding_types, delay):
8787
self.source_category = source_category
8888
self.findings = copy.deepcopy(finding_types)
8989
self.findings.append("CreateSampleFindings")
90+
self.findings.append("Exfiltration:IAMUser/AnomalousBehavior")
9091
print("Initialization complete for SumoLogicResource Object.")
9192

9293
@property
@@ -136,7 +137,8 @@ def assert_logs(self):
136137
assert any((("type" in d and d["type"] == finding_type)
137138
or ("eventName" in d and d["eventName"] == finding_type)) for d in messages)
138139
except AssertionError as e:
139-
self.verificationErrors.append(str(e))
140+
self.verificationErrors.append(
141+
"Finding Type \" %s \" not found in the Logs fetched from Sumo Logic." % finding_type)
140142

141143
def assert_collector(self, collector_id, assertions):
142144
collector_details, etag = self.sumo.collector(collector_id)
@@ -155,7 +157,9 @@ def assertions(self, data, assertions):
155157
try:
156158
assert value == data[key] or value in data[key]
157159
except AssertionError as e:
158-
self.verificationErrors.append(str(e))
160+
self.verificationErrors.append(
161+
"Expected Value \" %s \" does not match the current value \" %s \" for the Key "
162+
"as \" %s \"." % (value, data[key], key))
159163

160164

161165
class CloudFormation(object):

sumologic-app-utils/src/sumoresource.py

Lines changed: 47 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -945,7 +945,7 @@ def extract_params(self, event):
945945

946946

947947
class SumoLogicFieldExtractionRule(SumoResource):
948-
def _get_fer_by_name(self, fer_name):
948+
def get_fer_by_name(self, fer_name):
949949
token = ""
950950
page_limit = 100
951951
response = self.sumologic_cli.get_all_field_extraction_rules(limit=page_limit, token=token)
@@ -1348,55 +1348,52 @@ def extract_params(self, event):
13481348

13491349
if __name__ == '__main__':
13501350
props = {
1351-
"SumoAccessID": "",
1352-
"SumoAccessKey": "",
1351+
"SumoAccessID": "suU2PzuEzdacyE",
1352+
"SumoAccessKey": "dZks62YfZ8n3pPXzLFpNrJOMlxyJ5soUEHcKL7nOCOFJCGmefwreHaP6UUC7IAIp",
13531353
"SumoDeployment": "us1",
13541354
}
1355-
app_prefix = "CloudTrail"
1356-
# app_prefix = "GuardDuty"
1357-
collector_id = None
1358-
collector_type = "Hosted"
1359-
collector_name = "%sCollector" % app_prefix
1360-
source_name = "%sEvents" % app_prefix
1361-
source_category = "Labs/AWS/%s" % app_prefix
1362-
# appname = "Global Intelligence for Amazon GuardDuty"
1363-
appname = "Global Intelligence for AWS CloudTrail"
1364-
appid = "570bdc0d-f824-4fcb-96b2-3230d4497180"
1365-
# appid = "ceb7fac5-1137-4a04-a5b8-2e49190be3d4"
1366-
# appid = None
1367-
# source_params = {
1368-
# "logsrc": "_sourceCategory=%s" % source_category
1369-
# }
1370-
source_params = {
1371-
"cloudtraillogsource": "_sourceCategory=%s" % source_category,
1372-
"indexname": '%rnd%',
1373-
"incrementalindex": "%rnd%"
1374-
}
1375-
# col = Collector(**params)
1376-
# src = HTTPSource(**params)
1377-
app = App(props)
1378-
1379-
# create
1380-
# _, collector_id = col.create(collector_type, collector_name, source_category)
1381-
# _, source_id = src.create(collector_id, source_name, source_category)
1382-
1383-
_, app_folder_id = app.create(appname, source_params, appid)
1384-
app.delete(app_folder_id, True)
1385-
1386-
# update
1387-
# _, new_collector_id = col.update(collector_id, collector_type, "%sCollectorNew" % app_prefix, "Labs/AWS/%sNew" % app_prefix, description="%s Collector" % app_prefix)
1388-
# assert(collector_id == new_collector_id)
1389-
# _, new_source_id = src.update(collector_id, source_id, "%sEventsNew" % app_prefix, "Labs/AWS/%sNew" % app_prefix, date_format="yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", date_locator='\"createTime\":(.*),')
1390-
# assert(source_id == new_source_id)
1391-
# new_source_params = {
1392-
# "logsrc": "_sourceCategory=%s" % ("Labs/AWS/%sNew" % app_prefix)
1393-
# }
1394-
1395-
# _, new_app_folder_id = app.update(app_folder_id, appname, new_source_params, appid)
1396-
# assert(app_folder_id != new_app_folder_id)
1397-
1398-
# delete
1399-
# src.delete(collector_id, source_id, True)
1400-
# col.delete(collector_id, True)
1401-
# app.delete(new_app_folder_id, True)
1355+
1356+
# Delete the FER
1357+
fer_names = ["AwsObservabilityAlbAccessLogsFER", "AwsObservabilityApiGatewayCloudTrailLogsFER",
1358+
"AwsObservabilityDynamoDBCloudTrailLogsFER", "AwsObservabilityECSCloudTrailLogsFER",
1359+
"AwsObservabilityElastiCacheCloudTrailLogsFER", "AwsObservabilityFieldExtractionRule",
1360+
"AwsObservabilityLambdaCloudWatchLogsFER", "AwsObservabilityNlbAccessLogsFER",
1361+
"AwsObservabilityRdsCloudTrailLogsFER"]
1362+
fer_resource = SumoLogicFieldExtractionRule(props)
1363+
for fer_name in fer_names:
1364+
try:
1365+
fer_details = fer_resource.get_fer_by_name(fer_name)
1366+
fer_resource.delete(fer_details["id"], True)
1367+
except Exception as e:
1368+
print("FER Not Found")
1369+
1370+
# Delete the Metric Rules
1371+
metric_rule_names = ["AwsObservabilityALBMetricsEntityRule", "AwsObservabilityApiGatewayMetricsEntityRule",
1372+
"AwsObservabilityDynamoDBMetricsEntityRule", "AwsObservabilityEC2MetricsEntityRule",
1373+
"AwsObservabilityECSMetricsEntityRule", "AwsObservabilityElastiCacheMetricsEntityRule",
1374+
"AwsObservabilityLambdaMetricsEntityRule", "AwsObservabilityNLBMetricsEntityRule",
1375+
"AwsObservabilityRDSClusterMetricsEntityRule", "AwsObservabilityRDSInstanceMetricsEntityRule"]
1376+
metric_resource = SumoLogicMetricRules(props)
1377+
for metric_rule_name in metric_rule_names:
1378+
metric_resource.delete(metric_rule_name, metric_rule_name, True)
1379+
1380+
# Delete the Hierarchy
1381+
explorer_resource = SumoLogicAWSExplorer(props)
1382+
try:
1383+
id = explorer_resource.get_explorer_id("AWS Observability")
1384+
explorer_resource.delete(id, "AWS Observability", True)
1385+
except Exception as e:
1386+
print("Explorer Not Found")
1387+
1388+
# Delete the Fields
1389+
fields = ["loadbalancer", "apiname", "account", "region", "namespace", "tablename", "instanceid", "clustername",
1390+
"cacheclusterid", "functionname", "networkloadbalancer", "dbidentifier", "dbinstanceidentifier",
1391+
"dbclusteridentifier"]
1392+
field_resource = SumoLogicFieldsSchema(props)
1393+
for field in fields:
1394+
try:
1395+
id = field_resource.get_field_id(field)
1396+
field_resource.delete(id, field, True)
1397+
except Exception as e:
1398+
print("Field Not Found")
14021399

0 commit comments

Comments
 (0)