Add scripts to create myops-getqueryview:
[myops.git] / web / collect / client / upload.sh
diff --git a/web/collect/client/upload.sh b/web/collect/client/upload.sh
new file mode 100644 (file)
index 0000000..02b7c5e
--- /dev/null
@@ -0,0 +1,55 @@
+#!/bin/bash
+
+#if [ -f /tmp/source/configuration ] ; then
+#    source /tmp/source/configuration
+#elif [ -f /etc/planetlab/plc_config ] ; then
+#    source /etc/planetlab/plc_config
+#else 
+#      PLC_MONITOR_HOST=IPADDR
+#fi
+#if [[ -z "$PLC_MONITOR_HOST" || "$PLC_MONITOR_HOST" = "localhost.localdomain" ]] ; then
+#    PLC_MONITOR_HOST=monitor.planet-lab.org
+#fi
+if [ -f /etc/planetlab/plc_config ]; then
+       source /etc/planetlab/plc_config
+else
+       PLC_SLICE_PREFIX='pl'
+fi
+
+export MYOPS_SERVER=IPADDR
+
+function upload_log ()
+{
+    file=$1
+    path=$2
+    base=$( basename $file )
+    old=/tmp/${base}.old
+    new=/tmp/${base}.new
+    log=/tmp/${base}.log
+    if [ ! -f $file ] ; then
+        return
+    fi
+    if [ -f $new ] ; then
+        cp $new $old
+    else
+        touch $old
+    fi
+    cp $file $new
+    #comm -1 -3 $old $new > $log
+    cp $new $log
+    if [ $( stat -c %s $log ) -ne 0 ] ; then
+        curl --max-time 60 --silent http://${MYOPS_SERVER}/upload.php --form "log=@$log"
+        if [ $? -ne 0 ] ; then
+            # the upload has failed, so remove new file so no data is lost
+            rm -f /tmp/$( basename $file ).new
+        fi
+    fi
+}
+
+function upload_logs ()
+{
+    upload_log $1 multiops
+}
+
+upload_logs /home/${PLC_SLICE_PREFIX}_myops/myops.log
+