summaryrefslogtreecommitdiffstats
path: root/extra
diff options
context:
space:
mode:
Diffstat (limited to 'extra')
-rw-r--r--extra/docker/elk/.env11
-rw-r--r--extra/docker/elk/docker-compose.yml9
-rwxr-xr-xextra/docker/elk/tools/DMaaPServiceMocker/ds_mocker.py48
3 files changed, 44 insertions, 24 deletions
diff --git a/extra/docker/elk/.env b/extra/docker/elk/.env
index 4f1781d5..79d79430 100644
--- a/extra/docker/elk/.env
+++ b/extra/docker/elk/.env
@@ -1,13 +1,2 @@
# docker compose related
COMPOSE_PROJECT_NAME=clamp_elk
-
-# dmaap configuration for logstash
-dmaap_base_url=http://localhost:3904/
-dmaap_user=user
-dmaap_password=password
-dmaap_consumer_group=CG42
-dmaap_consumer_id=C42
-
-event_topic=EVENT_TOPIC
-notification_topic=NOTIFICATION_TOPIC
-request_topic=REQUEST_TOPIC
diff --git a/extra/docker/elk/docker-compose.yml b/extra/docker/elk/docker-compose.yml
index 9a610d0f..3b7284d5 100644
--- a/extra/docker/elk/docker-compose.yml
+++ b/extra/docker/elk/docker-compose.yml
@@ -19,6 +19,15 @@ services:
- elasticsearch
networks:
es_net:
+ environment:
+ - dmaap_base_url=http://localhost:3904/
+ - dmaap_user=user
+ - dmaap_password=password
+ - dmaap_consumer_group=CG42
+ - dmaap_consumer_id=C42
+ - event_topic=EVENT_TOPIC
+ - notification_topic=NOTIFICATION_TOPIC
+ - request_topic=REQUEST_TOPIC
kibana:
image: kibana
diff --git a/extra/docker/elk/tools/DMaaPServiceMocker/ds_mocker.py b/extra/docker/elk/tools/DMaaPServiceMocker/ds_mocker.py
index 05c1b986..c1116066 100755
--- a/extra/docker/elk/tools/DMaaPServiceMocker/ds_mocker.py
+++ b/extra/docker/elk/tools/DMaaPServiceMocker/ds_mocker.py
@@ -194,19 +194,41 @@ class CLStatus(object):
yield Notification.final().success(**config)
raise StopIteration()
-test_datas = [CLStatus(missing=False, disabled=False, op_failure=False) for i in range(45)] \
+def print_usage():
+ print("""
+ ./ds_mocker.py <DMAAP_URL> <EVENT_TOPIC> [NOTIFICATION_TOPIC [REQUEST_TOPIC]]
+ """)
+ exit()
+
+def push(test_datas):
+ for current_i, status in enumerate(test_datas):
+ time.sleep(random.randint(0,6))
+ for s in status:
+ # print(s)
+ status_code = s.publish()
+ if status_code != 200:
+ print("Error when publishing : status_code={}".format(status_code))
+ exit(1)
+ time.sleep(random.randint(0,3))
+ print("%03d,missing:%5s,disabled:%5s,op_failure:%5s - %s" % (current_i, status._missing, status._disabled, status._op_failure, status._config))
+
+
+def generate_dataset_1():
+ test_datas = [CLStatus(missing=False, disabled=False, op_failure=False) for i in range(45)] \
+ [CLStatus(missing=True, disabled=False, op_failure=False) for i in range(5)] \
+ [CLStatus(missing=False, disabled=True, op_failure=False) for i in range(6)] \
+ [CLStatus(missing=False, disabled=False, op_failure=True) for i in range(7)]
-random.shuffle(test_datas)
-random.shuffle(test_datas)
-
-for current_i, status in enumerate(test_datas):
- time.sleep(random.randint(0,6))
- for s in status:
- status_code = s.publish()
- if status_code != 200:
- print("Error when publishing : status_code={}".format(status_code))
- exit(1)
- time.sleep(random.randint(0,3))
- print("%03d,missing:%5s,disabled:%5s,op_failure:%5s - %s" % (current_i, status._missing, status._disabled, status._op_failure, status._config))
+ random.shuffle(test_datas)
+ return test_datas
+
+
+if __name__ == "__main__":
+ import sys
+ if len(sys.argv) < 3:
+ print_usage()
+
+ DMaaPMessage.dmaap_host_url = sys.argv[1]
+ Event.topic = sys.argv[2]
+ Notification.topic = len(sys.argv) > 3 and sys.argv[3] or sys.argv[2]
+ # Request.topic = len(sys.argv) > 4 or Notification.topic
+ push(generate_dataset_1())