diff --git a/scripts/cord-in-a-box.sh b/scripts/cord-in-a-box.sh
index b018f22..e984f47 100755
--- a/scripts/cord-in-a-box.sh
+++ b/scripts/cord-in-a-box.sh
@@ -1,6 +1,6 @@
 #!/usr/bin/env bash
 
-set -e
+set -e -x
 
 CORDDIR=~/cord
 VMDIR=/cord/build/
@@ -11,11 +11,20 @@
 REPO_BRANCH="master"
 VERSION_STRING="CiaB development version"
 
+exec > >(tee -i $CORDDIR/install.out)
+exec 2>&1
+
 function add_box() {
   vagrant box list | grep $1 | grep virtualbox || vagrant box add $1
   vagrant box list | grep $1 | grep libvirt || vagrant mutate $1 libvirt --input-provider virtualbox
 }
 
+function run_stage {
+    echo "==> "$1": Starting"
+    $1
+    echo "==> "$1": Complete"
+}
+
 function cleanup_from_previous_test() {
   echo "## Cleanup ##"
 
@@ -36,7 +45,8 @@
   sudo apt-get update
   [ -e vagrant_1.8.5_x86_64.deb ] || wget https://releases.hashicorp.com/vagrant/1.8.5/vagrant_1.8.5_x86_64.deb
   dpkg -l vagrant || sudo dpkg -i vagrant_1.8.5_x86_64.deb
-  sudo apt-get -y install qemu-kvm libvirt-bin libvirt-dev curl nfs-kernel-server git build-essential
+  sudo apt-get -y install qemu-kvm libvirt-bin libvirt-dev curl nfs-kernel-server git build-essential python-pip
+  sudo pip install pyparsing python-logstash
 
   [ -e ~/.ssh/id_rsa ] || ssh-keygen -t rsa -N "" -f ~/.ssh/id_rsa
 
@@ -98,6 +108,25 @@
   fi
 }
 
+function elk_up() {
+  cd $CORDDIR/build
+
+  sudo su $USER -c 'vagrant up elastic --provider libvirt'
+
+  # This is a workaround for a weird issue with ARP cache timeout breaking 'vagrant ssh'
+  # It allows SSH'ing to the machine via 'ssh corddev'
+  sudo su $USER -c "vagrant ssh-config elastic > $SSHCONFIG"
+
+  cd $CORDDIR
+  if [ ! -f /tmp/elk-patch-applied ]; then
+    touch /tmp/elk-patch-applied
+    sh build/scripts/repo-apply.sh build/elk-logger/elk-ciab.diff
+  fi
+
+  sudo chmod +x build/elk-logger/logstash_tail
+  build/elk-logger/logstash_tail --file install.out --hostport 10.100.198.222:5617 & 
+}
+
 function vagrant_vms_up() {
   cd $CORDDIR/build
 
@@ -256,16 +285,17 @@
 # What to do
 if [[ $CLEANUP -eq 1 ]]
 then
-  cleanup_from_previous_test
+  run_stage cleanup_from_previous_test
 fi
 
 echo ""
 echo "Preparing to install $VERSION_STRING ($REPO_BRANCH branch)"
 echo ""
 
-bootstrap
-cloudlab_setup
-vagrant_vms_up
+run_stage bootstrap
+run_stage cloudlab_setup
+run_stage elk_up
+run_stage vagrant_vms_up
 
 if [[ $SETUP_ONLY -ne 0 ]]
 then
@@ -273,9 +303,9 @@
   exit 0
 fi
 
-install_head_node
-set_up_maas_user
-leaf_spine_up
+run_stage install_head_node
+run_stage set_up_maas_user
+run_stage leaf_spine_up
 
 if [[ $NUM_COMPUTE_NODES -gt 3 ]]
 then
@@ -283,11 +313,13 @@
    NUM_COMPUTE_NODES=3
 fi
 
+echo "==> Adding compute nodes: Starting"
 for i in `seq 1 $NUM_COMPUTE_NODES`;
 do
    echo adding the compute node: compute-node-$i
    add_compute_node compute-node-$i build_compute-node-$i
 done
+echo "==> Adding compute nodes: Complete"
 
 # run diagnostics both before/after the fabric/e2e tests
 if [[ $DIAGNOSTICS -eq 1 ]]
@@ -298,17 +330,17 @@
 
 if [[ $FABRIC -ne 0 ]]
 then
-  initialize_fabric
+  run_stage initialize_fabric
 fi
 
 if [[ $RUN_TEST -eq 1 ]]
 then
-  run_e2e_test
+  run_stage run_e2e_test
 fi
 
 if [[ $DIAGNOSTICS -eq 1 ]]
 then
-  run_diagnostics
+  run_stage run_diagnostics
 fi
 
 exit 0
diff --git a/scripts/repo-apply.sh b/scripts/repo-apply.sh
new file mode 100755
index 0000000..f3a5662
--- /dev/null
+++ b/scripts/repo-apply.sh
@@ -0,0 +1,25 @@
+#!/bin/sh
+## Script to patch up diff reated by `repo diff`
+
+# from https://groups.google.com/d/msg/repo-discuss/43juvD1qGIQ/7maptZVcEjsJ
+if [ -z "$1" ] || [ ! -e "$1" ]; then
+    echo "Usages: $0 <repo_diff_file>";
+    exit 0;
+fi
+
+rm -fr _tmp_splits*
+cat $1 | csplit -qf '' -b "_tmp_splits.%d.diff" - '/^project.*\/$/' '{*}' 
+
+working_dir=`pwd`
+
+for proj_diff in `ls _tmp_splits.*.diff`
+do 
+    chg_dir=`cat $proj_diff | grep '^project.*\/$' | cut -d " " -f 2`
+    echo "FILE: $proj_diff $chg_dir"
+    if [ -e $chg_dir ]; then
+        ( cd $chg_dir; \
+            cat $working_dir/$proj_diff | grep -v '^project.*\/$' | patch -Np1;);
+    else
+        echo "$0: Project directory $chg_dir don't exists.";
+    fi
+done
