From 3032f3e0ba9ceaa3ad2df9980ff0d800ad5a009a Mon Sep 17 00:00:00 2001
From: MJB <mjb@it-innovation.soton.ac.uk>
Date: Sat, 13 Jan 2018 00:09:22 +0000
Subject: [PATCH] added ipendpoint agents and VMs

---
 ...tick-stack-vm.sh => install-clmc-agent.sh} |  17 +--
 ...ck-stack-vm.sh => install-clmc-service.sh} |   4 -
 .../install-tick-stack-docker-compose.sh      |  51 --------
 ...tack-services.sh => start-clmc-service.sh} |   6 +-
 scripts/influx/start-telegraf.sh              |  28 -----
 ...elegraf.conf => telegraf_ipendpoint1.conf} |  20 ++-
 scripts/influx/telegraf_ipendpoint2.conf      | 116 ++++++++++++++++++
 src/mediaServiceSim/LineProtocolGenerator.pyc | Bin 7698 -> 0 bytes
 .../LineProtocolGenerator.cpython-35.pyc      | Bin 6488 -> 0 bytes
 .../LineProtocolGenerator.cpython-36.pyc      | Bin 6021 -> 0 bytes
 10 files changed, 133 insertions(+), 109 deletions(-)
 rename scripts/influx/{configure-tick-stack-vm.sh => install-clmc-agent.sh} (73%)
 rename scripts/influx/{install-tick-stack-vm.sh => install-clmc-service.sh} (92%)
 delete mode 100644 scripts/influx/install-tick-stack-docker-compose.sh
 rename scripts/influx/{start-tick-stack-services.sh => start-clmc-service.sh} (91%)
 delete mode 100644 scripts/influx/start-telegraf.sh
 rename scripts/influx/{telegraf.conf => telegraf_ipendpoint1.conf} (91%)
 create mode 100644 scripts/influx/telegraf_ipendpoint2.conf
 delete mode 100644 src/mediaServiceSim/LineProtocolGenerator.pyc
 delete mode 100644 src/mediaServiceSim/__pycache__/LineProtocolGenerator.cpython-35.pyc
 delete mode 100644 src/mediaServiceSim/__pycache__/LineProtocolGenerator.cpython-36.pyc

diff --git a/scripts/influx/configure-tick-stack-vm.sh b/scripts/influx/install-clmc-agent.sh
similarity index 73%
rename from scripts/influx/configure-tick-stack-vm.sh
rename to scripts/influx/install-clmc-agent.sh
index 433e036..4a49b80 100644
--- a/scripts/influx/configure-tick-stack-vm.sh
+++ b/scripts/influx/install-clmc-agent.sh
@@ -1,7 +1,7 @@
 #!/bin/bash
 #/////////////////////////////////////////////////////////////////////////
 #//
-#// (c) University of Southampton IT Innovation Centre, 2018
+#// (c) University of Southampton IT Innovation Centre, 2017
 #//
 #// Copyright in this software belongs to University of Southampton
 #// IT Innovation Centre of Gamma House, Enterprise Road,
@@ -18,17 +18,18 @@
 #// PURPOSE, except where stated in the Licence Agreement supplied with
 #// the software.
 #//
-#//      Created By :            Simon Crowle
-#//      Created Date :          03/11/2018
+#//      Created By :            Michael Boniface
+#//      Created Date :          13/12/2017
 #//      Created for Project :   FLAME
 #//
 #/////////////////////////////////////////////////////////////////////////
 
-echo Configuring TICK stack services...
+# Install telegraf
+wget https://dl.influxdata.com/telegraf/releases/telegraf_1.3.2-1_amd64.deb
+dpkg -i telegraf_1.3.2-1_amd64.deb
 
-# Configure Telegraf
-systemctl stop telegraf
-
-cp ./config/telegraf/telegraf.conf /etc/telegraf/
+# Copy configuration
+cp $1 /etc/telegraf/telegraf.conf
 
+# Start telegraf
 systemctl start telegraf
\ No newline at end of file
diff --git a/scripts/influx/install-tick-stack-vm.sh b/scripts/influx/install-clmc-service.sh
similarity index 92%
rename from scripts/influx/install-tick-stack-vm.sh
rename to scripts/influx/install-clmc-service.sh
index 0a49031..98b2858 100644
--- a/scripts/influx/install-tick-stack-vm.sh
+++ b/scripts/influx/install-clmc-service.sh
@@ -32,10 +32,6 @@ dpkg -i influxdb_1.2.4_amd64.deb
 wget https://dl.influxdata.com/kapacitor/releases/kapacitor_1.3.1_amd64.deb
 dpkg -i kapacitor_1.3.1_amd64.deb
 
-# install Telegraf
-wget https://dl.influxdata.com/telegraf/releases/telegraf_1.3.2-1_amd64.deb
-dpkg -i telegraf_1.3.2-1_amd64.deb
-
 # install Chronograf
 wget https://dl.influxdata.com/chronograf/releases/chronograf_1.3.3.0_amd64.deb
 dpkg -i chronograf_1.3.3.0_amd64.deb
\ No newline at end of file
diff --git a/scripts/influx/install-tick-stack-docker-compose.sh b/scripts/influx/install-tick-stack-docker-compose.sh
deleted file mode 100644
index 7acc290..0000000
--- a/scripts/influx/install-tick-stack-docker-compose.sh
+++ /dev/null
@@ -1,51 +0,0 @@
-#!/bin/bash
-#/////////////////////////////////////////////////////////////////////////
-#//
-#// (c) University of Southampton IT Innovation Centre, 2017
-#//
-#// Copyright in this software belongs to University of Southampton
-#// IT Innovation Centre of Gamma House, Enterprise Road,
-#// Chilworth Science Park, Southampton, SO16 7NS, UK.
-#//
-#// This software may not be used, sold, licensed, transferred, copied
-#// or reproduced in whole or in part in any manner or form or in or
-#// on any media by any person other than in accordance with the terms
-#// of the Licence Agreement supplied with the software, or otherwise
-#// without the prior written consent of the copyright owners.
-#//
-#// This software is distributed WITHOUT ANY WARRANTY, without even the
-#// implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-#// PURPOSE, except where stated in the Licence Agreement supplied with
-#// the software.
-#//
-#//      Created By :            Michael Boniface
-#//      Created Date :          13/12/2017
-#//      Created for Project :   FLAME
-#//
-#/////////////////////////////////////////////////////////////////////////
-
-# install docker
-apt-get -y update
-apt-get -y install apt-transport-https ca-certificates curl software-properties-common
-curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
-add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
-apt-get -y update
-apt-get install docker-ce
-
-# to get a specific version look at the cache and run the install with that version
-# apt-cache madison docker-ce
-# apt-get install docker-ce=<VERSION>
-
-# test docker
-# docker run hello-world
-
-# install docker compose
-curl -L https://github.com/docker/compose/releases/download/1.17.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
-chmod +x /usr/local/bin/docker-compose
-# test compose
-docker-compose version 1.17.0, build 1719ceb
-
-# install tick stack
-git clone https://github.com/influxdata/TICK-docker.git /opt
-cd /opt/TICK-docker/1.3
-docker-compose up -d
diff --git a/scripts/influx/start-tick-stack-services.sh b/scripts/influx/start-clmc-service.sh
similarity index 91%
rename from scripts/influx/start-tick-stack-services.sh
rename to scripts/influx/start-clmc-service.sh
index 603fc75..f92c6b5 100644
--- a/scripts/influx/start-tick-stack-services.sh
+++ b/scripts/influx/start-clmc-service.sh
@@ -28,8 +28,4 @@ echo Starting TICK stack services...
 
 systemctl start influxdb
 systemctl start kapacitor
-#systemctl start telegraf
-systemctl start chronograf
-
-# test influx
-#curl "http://localhost:8086/query?q=show+databases"
\ No newline at end of file
+systemctl start chronograf
\ No newline at end of file
diff --git a/scripts/influx/start-telegraf.sh b/scripts/influx/start-telegraf.sh
deleted file mode 100644
index e12bb9e..0000000
--- a/scripts/influx/start-telegraf.sh
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/bin/bash
-#/////////////////////////////////////////////////////////////////////////
-#//
-#// (c) University of Southampton IT Innovation Centre, 2018
-#//
-#// Copyright in this software belongs to University of Southampton
-#// IT Innovation Centre of Gamma House, Enterprise Road,
-#// Chilworth Science Park, Southampton, SO16 7NS, UK.
-#//
-#// This software may not be used, sold, licensed, transferred, copied
-#// or reproduced in whole or in part in any manner or form or in or
-#// on any media by any person other than in accordance with the terms
-#// of the Licence Agreement supplied with the software, or otherwise
-#// without the prior written consent of the copyright owners.
-#//
-#// This software is distributed WITHOUT ANY WARRANTY, without even the
-#// implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-#// PURPOSE, except where stated in the Licence Agreement supplied with
-#// the software.
-#//
-#//      Created By :            Simon Crowle
-#//      Created Date :          03/11/2018
-#//      Created for Project :   FLAME
-#//
-#/////////////////////////////////////////////////////////////////////////
-
-echo Starting Telegraf services...
-systemctl start telegraf
\ No newline at end of file
diff --git a/scripts/influx/telegraf.conf b/scripts/influx/telegraf_ipendpoint1.conf
similarity index 91%
rename from scripts/influx/telegraf.conf
rename to scripts/influx/telegraf_ipendpoint1.conf
index c683737..7844869 100644
--- a/scripts/influx/telegraf.conf
+++ b/scripts/influx/telegraf_ipendpoint1.conf
@@ -11,9 +11,12 @@
 
 # Global tags can be specified here in key="value" format.
 [global_tags]
-  # dc = "us-east-1" # will tag all metrics with dc=us-east-1
-  # rack = "1a"
-  auth = "IT-Inn"
+  location="DC1"
+  sfc="MS_Template_1"
+  sfc_i="MS_I1"
+  sf="adaptive_streaming"
+  sf_i="adaptive_streaming_I1"
+  ipendpoint="adaptive_streaming_I1_ipendpoint1"
 
 # Configuration for telegraf agent
 [agent]
@@ -65,7 +68,7 @@
   # Multiple urls can be specified but it is assumed that they are part of the same
   # cluster, this means that only ONE of the urls will be written to each interval.
   # urls = ["udp://127.0.0.1:8089"] # UDP endpoint example
-  urls = ["http://localhost:8086"] # required
+  urls = ["http://192.168.50.10:8086"] # required
   # The target database for metrics (telegraf will create it if not exists)
   database = "CLMCMetrics" # required
   # Precision of writes, valid values are "ns", "us" (or "µs"), "ms", "s", "m", "h".
@@ -95,15 +98,6 @@
 ###############################################################################
 #                                  INPUTS                                     #
 ###############################################################################
-# Read metrics about cpu usage
-[[inputs.cpu]]
-  ## Whether to report per-cpu stats or not
-  percpu = true
-  ## Whether to report total system cpu stats or not
-  totalcpu = true
-  ## If true, collect raw CPU time metrics.
-  collect_cpu_time = false
-
 # # Influx HTTP write listener
 [[inputs.http_listener]]
   ## Address and port to host HTTP listener on
diff --git a/scripts/influx/telegraf_ipendpoint2.conf b/scripts/influx/telegraf_ipendpoint2.conf
new file mode 100644
index 0000000..e0d62af
--- /dev/null
+++ b/scripts/influx/telegraf_ipendpoint2.conf
@@ -0,0 +1,116 @@
+# Telegraf configuration
+
+# Telegraf is entirely plugin driven. All metrics are gathered from the
+# declared inputs, and sent to the declared outputs.
+
+# Plugins must be declared in here to be active.
+# To deactivate a plugin, comment out the name and any variables.
+
+# Use 'telegraf -config telegraf.conf -test' to see what metrics a config
+# file would generate.
+
+# Global tags can be specified here in key="value" format.
+[global_tags]
+  location="DC2"
+  sfc="MS_Template_1"
+  sfc_i="MS_I1"
+  sf="adaptive_streaming"
+  sf_i="adaptive_streaming_I1"
+  ipendpoint="adaptive_streaming_I1_ipendpoint2"
+
+# Configuration for telegraf agent
+[agent]
+  ## Default data collection interval for all inputs
+  interval = "10s"
+  ## Rounds collection interval to 'interval'
+  ## ie, if interval="10s" then always collect on :00, :10, :20, etc.
+  round_interval = true
+
+  ## Telegraf will cache metric_buffer_limit metrics for each output, and will
+  ## flush this buffer on a successful write.
+  metric_buffer_limit = 1000
+  ## Flush the buffer whenever full, regardless of flush_interval.
+  flush_buffer_when_full = true
+
+  ## Collection jitter is used to jitter the collection by a random amount.
+  ## Each plugin will sleep for a random time within jitter before collecting.
+  ## This can be used to avoid many plugins querying things like sysfs at the
+  ## same time, which can have a measurable effect on the system.
+  collection_jitter = "0s"
+
+  ## Default flushing interval for all outputs. You shouldn't set this below
+  ## interval. Maximum flush_interval will be flush_interval + flush_jitter
+  flush_interval = "10s"
+  ## Jitter the flush interval by a random amount. This is primarily to avoid
+  ## large write spikes for users running a large number of telegraf instances.
+  ## ie, a jitter of 5s and interval 10s means flushes will happen every 10-15s
+  flush_jitter = "0s"
+
+  ## Logging configuration:
+  ## Run telegraf in debug mode
+  debug = false
+  ## Run telegraf in quiet mode
+  quiet = false
+  ## Specify the log file name. The empty string means to log to stdout.
+  logfile = "G:/Telegraf/telegraf.log"
+
+  ## Override default hostname, if empty use os.Hostname()
+  hostname = ""
+
+
+###############################################################################
+#                                  OUTPUTS                                    #
+###############################################################################
+
+# Configuration for influxdb server to send metrics to
+[[outputs.influxdb]]
+  # The full HTTP or UDP endpoint URL for your InfluxDB instance.
+  # Multiple urls can be specified but it is assumed that they are part of the same
+  # cluster, this means that only ONE of the urls will be written to each interval.
+  # urls = ["udp://127.0.0.1:8089"] # UDP endpoint example
+  urls = ["http://192.168.50.10:8086"] # required
+  # The target database for metrics (telegraf will create it if not exists)
+  database = "CLMCMetrics" # required
+  # Precision of writes, valid values are "ns", "us" (or "µs"), "ms", "s", "m", "h".
+  # note: using second precision greatly helps InfluxDB compression
+  precision = "s"
+
+  ## Write timeout (for the InfluxDB client), formatted as a string.
+  ## If not provided, will default to 5s. 0s means no timeout (not recommended).
+  timeout = "5s"
+  # username = "telegraf"
+  # password = "metricsmetricsmetricsmetrics"
+  # Set the user agent for HTTP POSTs (can be useful for log differentiation)
+  # user_agent = "telegraf"
+  # Set UDP payload size, defaults to InfluxDB UDP Client default (512 bytes)
+  # udp_payload = 512
+[[outputs.file]]
+  ## Files to write to, "stdout" is a specially handled file.
+  files = ["stdout", "/tmp/metrics.out"]
+
+  ## Data format to output.
+  ## Each data format has its own unique set of configuration options, read
+  ## more about them here:
+  ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md
+  data_format = "influx"
+
+
+###############################################################################
+#                                  INPUTS                                     #
+###############################################################################
+# # Influx HTTP write listener
+[[inputs.http_listener]]
+  ## Address and port to host HTTP listener on
+  service_address = ":8186"
+
+  ## timeouts
+  read_timeout = "10s"
+  write_timeout = "10s"
+
+  ## HTTPS
+  #tls_cert= "/etc/telegraf/cert.pem"
+  #tls_key = "/etc/telegraf/key.pem"
+
+  ## MTLS
+  #tls_allowed_cacerts = ["/etc/telegraf/clientca.pem"]
+  
\ No newline at end of file
diff --git a/src/mediaServiceSim/LineProtocolGenerator.pyc b/src/mediaServiceSim/LineProtocolGenerator.pyc
deleted file mode 100644
index 1701c03b9385cc1425c3fa5d41d61ece154e0044..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 7698
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
MigF5Zig1bn03LQxR{#J2

diff --git a/src/mediaServiceSim/__pycache__/LineProtocolGenerator.cpython-35.pyc b/src/mediaServiceSim/__pycache__/LineProtocolGenerator.cpython-35.pyc
deleted file mode 100644
index ac11f6a88b988c0bd96dbc026a0b0facd6e6c2b0..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 6488
zcmWgR<>flHFCuD^0t3Ti1|-15z`)?Zz`#)aiGhJ3g@GZ3ks*hHAqv7~V#r}+$Yo@R
zVr0l=Vu)g5U`%0VNMT`UVPJ@2W=LUWNMQrBSr}5-8B#dFY*vO8PKFdNFq@4bg_|LT
z2h3(?Na1Bj;RCZd7*hBdQUt(kPKFdgh7=(%n~Nbum?1?3%;siD5oJgb1G9M;Qp6cj
zB*1K5h7?JL6e%#9k0C{xAw>qv=4VKeWk`_&vjrGZ<QY;Fz-&Q=6h(#<B`{lvAw`)X
zMFq?j26;7DQ}rb%F#I%`Zm|_5=B4E4-eL#QnRzA2%pe&C1_l-e1_o9J1_ozPFhzla
ziIJg}nW2W6A%%&-9Li#5C}CizVPI%xWDrkbVGxIjvx3DL!QwD6Hjr2eBSQ@nNEoC8
zDif^9?ia<Kms%2EkY7|1pP64JpaWs0*rw(c6dM>TR0#w{#5+ZXxCX}u_y>i=``Z3u
z)Tt5(!4Oo?WV*#%TvBw4D?UB7#4k7`GdER}C5o>oH90f2EHx!Qsj?)sIEt${HLnE1
zzQt0KnVWixtthp)G^b=GLlGAP1H&&<{j$XLqQtxs{o<lz{oK@)%*5c-qO#27)Zolq
zeV@#{)PSP=lKkZS9QV|`)S|?a{35-A%3I>;5MFA0UTR5seo=OOQ7XtQoS;DD0fj6R
z8xt3k1fvL(6iX3EAQ=?KAPF|)@a}+yH!DL8D=54Xp=@3Y5o2b6u~-;DfeH(2h%6-h
z!2vA}QwI+J8fH-7!^N0EdP|rXYFI$RkT_vwC}9R!+sw$oSi{Nyjvbz|-1wr@;`qdz
zoc!b}E}gR6_~Mepl2qFwkn^ipk_$?0t2lIWQ*-l+Ds8Jcb&5;!ixSgQZ8ceLaTS*4
zm!!s*7bO-Hfjn8n&cMKMi?yIAGp|IG?G`K8pj*tz1*Nx`b5nC~u|xG1aWF726oEnx
z93>Ef8>CkV9?E68@yYplX_@I#pa2#Eg(DLilL#XhlL(^-qX@GU6BlEVFarZaGRQEH
zG{`(q(gr8%Q_x`MV5s3h4`zrMB!R;M7b3<2O308@EN)&45rYIcEN~%WkN^jVEL<Hs
z155`8DClcgLE#RU<phhdp@_kClrS=YVu~Fk+sp_y2NY2pAU<Oa2SczXmtT}%S#Eqr
zesM{BazSZ)X>nqDY897GPJVJ?NoIbYZ569daayu%6+4KE&$O-L(J4-gFGx(z2E|ns
z8;F+)jZ-eT3AR;2I&e;Wab<ByYObv&OA#+9e&8`$#K*wEpvifQIVV5)7ISf0@-5cl
zwB-2ATU-b$Zm|@n#b-uAjZRHWPmK~lHyL-d3&W!wqz96*bV2bBihKq}P`ra<oe>uQ
zTufq&T#QAMp!f%+Q&9Ya+zVoZ<G%qK|By_>1ddl|Va5z9%pl?{U~xzqNMS{YL*f^b
z$&kg_!RldY0b&LRNDP!u!N~!Z(ZJb@)2~V}w;(k=C9yaoz8F%-C{%GJ=jWBg=Ovce
zDpfHl=~QtRr52W^7MB#;7J-s)l~7_?Iw(sP<mVNq#)FD5+bZFL)I?B;Q;Z}C&Y+r1
zh@7X%7R6DNTAW{6l$?5t17_+iK@9V531J$CJ8~r8kpuS&B!(P8F$78*3`}e+5=;_|
z;KGloNEQ?;jG!oCU|;~zpgI{GE1+UAg%MP(h^H_zhzDyj`Tb&40_T5CMu<m1Wi(iz
z2vi_|Q(`d49*`Lfj9`8;$V`y&AQ~hNHXBq7K+F~anVae0#1AR)H5nm(Lo*pvRz<)~
zW&)R8*sDk@NLm7w)X=2D#2{Y7z#xuXRf19gIKe<t0JvFE!wm8xt6vpsab^l6w!x8B
z1&bUVl;~rLVo454Exg5)nF4V!Cny`DI{TJbJS;k#b23x&N`fGXCjsOWP!3>Vl3<f!
zE>Zx+0Vp?s!U-e}VuQnJ8N@fx$_A1%px(mB8IY8of+P+p4Z%rW99bNaW1u;V9g&k@
zxg(2-p&2U6iI8Ok=N)F0h65|8u~owg3OQ~+XmAylCgx<8R6;WdXL3PlD5wCmtrCLD
zxMZfKr52^;C8yd}aYIwSrwb&=tJpL1Qc^2ym5SsT7#P4=1e}XBS->go7E5VqW=a$*
zh%^DG0!_9k)}quxPnRfmsPW+Fh~j|R8zl%8M_7xsHWP=(6{v-gS`?HD$-f1l$Pxg>
z3=<nODBFOr9J3TlkrF7{K+y$~1f@`Tw9SD=8yiCn8+wHX5ksxeAYv>G=Cu$OE4Tsz
zr%-X27$njlkqi@q6mgIUhKYgOA)p!xT&F=2I2*Vv0j|&(YuFfqH97pEc)|4(tO%;&
z(kaf#Oiqo@OtD3-svvQSuVDes<>1Hx#|NbTVUJ?+bh*U=tMQ6J;a4OG$|0b}0XT-R
zMuI3>Bshax6|JBs5CMfUxK#nGSD@_*6;L#Q3S*E0P!xbLIQLXQqk#p~uu1{vo)l(q
zfd&Z{h&Xb+VqOaogXA1o1VF^t7+|t&py&YwF*r70W`SA(;HY4%VF5SSss!MTX-Mlx
zp^5|43I&C66bq<HUBv@wVT0RVwpIK(B^98CRB=gBVrE_mqy>PZhG)IS4mGQYACyyA
ziV{mwaR)3v$lSEd^wOeKaPxi^C`duE!ob7^Y6pWVYe+Lq4HTT9f*KT@pk4?lXu-j0
z0}W0lP!RwLPH3OQycQw`Y7IkJ;8a)xDXO5d!J4doQR47w30lQM-Brb}0~3G*1|;E$
z<tBndBri3&BsC>I8C;4M+iEf)Qk^C<BmhLQD#e=0q@k9A0t04iT4`P~sByL$6fmG-
z9279%l*Uw~4hj-bP=JC2l;J@b93%^%L4w>ND`8+r0XOJVSU|nh8U_ZDW+sMaCWcxT
zQ1`Wlg+T&To->2`ub@N(&ZqD$8#}ml2~J0FF%Ga8EHIJns$m96fl?kgt%BR5%nT(g
zp#CAa<G{=itjXyI$$FrCQ3R@nU#2iHFuVkDLG72s%$&reoYeS&)S~3nyb{|gKAqCy
z)D#4tU8f|!Br(TUleGvG2)CGXGxN|hJX;Z{^%unnRvDk0nu|z^Q7j<iqBs-Fpf*8T
z44^OuHydst8kD)Ip#BXgUGD@%gBU2hnb;V)m}D5aKphECDupyAwLwt=Dsw?fK&=UQ
zD%}Q+5_X0fcJ#6rB8FP_Lc}1205}lE&1)fItPC&~IK#vHY!F#?P$2;6u)%e3fW=@D
z3Q-3)1=?`{m%`wPVh5MX;En`i4LdlZqJ)$4a|=pKQseXTQ&OSH6jC;)V3f^Od^#Z2
z5T%(Zkm90>HMyX)7*{V4k!_F)YmQqSu(H2M8B~_AgDuZYxdkfsiy?^zf4MCKYv;s+
zT!iNS)1bJN07Vq2_y%_gp&dg;XxBgw6q}$J1StZgOAs5J!K$FK2`PfXML4|7frz2T
zCPWNWlR{XiH7P_4E(?tjSSb!F-a%OjocSPyIGbOTIARC^(ppD}6=;nK8a4rsGr*&P
zD=9HAr93mGBm-9;jkQPz6xdua^D|STIN_QQ*#|whD8PdnrV&<$Lml=26x^Wb0+(RW
zUN|(M^+5p*D!o7f4az?7fL;U*Xh;JDHJ~A4r~wTTL(Mi2F;Iesuu!uNL<}|CK*ZoW
zpb-MjK;SHbt>Gd8^LJ)mNorAAVlq6RaKhU#=vkwR6H?K_qld2uT(7`tT8yd}N3F{a
zi8CHhDu?B}B2`c{@}d|R#fwst<Bm;5jMzl?6=-O*7+MlCi6G@3Xp|a&q7>Bm07WUN
zP=!b7J!q72GSqOQmxK^8)F_3Bp++f0j1|=MhnIg4F-Ut9oL9unYawEwK@tcHwIqay
zp$@A+#JIpECb$g5GzFR*z(XtG<iH6oF*zYaEu0L&n%sU-GN7@HyyB9?yyVpQ;?km`
z{Pe^Uq$B}rgI2MCMq9vxE6MShRotLK7U+-*cswRP6Vl`$z5L`V0<}$xL_y74P(&4p
zgIJ&fuLv|QLQMIo3Qq?3e8a}bz)&m$if2$k3at>qZ4@vYnjj282?A>aE{y>^N(^nR
zf%|hcj0{<@h6SYM2Fd!244_URBdGTW5r!p|EO2Ql4sFw=KvD}MLl!I{fK`K<dW6GU
zlNC}OVF@@*<|yvm)WqV_qSV~fypkvh^ky2UtSd>aD8bsklfh7pWR?sl5J6)b42*1y
z;t<GGWCR*D6Dd*z#T+Q?z%3o{$S`=^5<GYX9xH)38B}zFyY1jkU=gSbQUq!^gPV#)
zpvFlNs7@;amA6Hp99jg56|gNx<vA#~LYhDvHo5sJr8%i~pv+qgGLDB)jD<&#N0>*1
eM~H`&hl59eN0djDN05h)M~Fw1M~Fv+M+^XIkUAUy

diff --git a/src/mediaServiceSim/__pycache__/LineProtocolGenerator.cpython-36.pyc b/src/mediaServiceSim/__pycache__/LineProtocolGenerator.cpython-36.pyc
deleted file mode 100644
index b8bb4785ef85f853c379898f7b6b17715734a63b..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 6021
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

-- 
GitLab