summaryrefslogtreecommitdiffstats
path: root/virt-top/virt_top_csv.ml
diff options
context:
space:
mode:
Diffstat (limited to 'virt-top/virt_top_csv.ml')
-rw-r--r--virt-top/virt_top_csv.ml29
1 files changed, 29 insertions, 0 deletions
diff --git a/virt-top/virt_top_csv.ml b/virt-top/virt_top_csv.ml
new file mode 100644
index 0000000..71bb79e
--- /dev/null
+++ b/virt-top/virt_top_csv.ml
@@ -0,0 +1,29 @@
+(* 'top'-like tool for libvirt domains.
+ * $Id: virt_top_csv.ml,v 1.1 2007/08/23 11:09:19 rjones Exp $
+ *
+ * This file contains all code which requires CSV support.
+ *)
+
+open ExtList
+
+module C = Libvirt.Connect
+module D = Libvirt.Domain
+module N = Libvirt.Network
+
+(* Output channel, or None if CSV output not enabled. *)
+let chan = ref None ;;
+
+Virt_top.csv_start :=
+ fun filename ->
+ chan := Some (open_out filename) ;;
+
+Virt_top.csv_write :=
+ fun row ->
+ match !chan with
+ | None -> () (* CSV output not enabled. *)
+ | Some chan ->
+ Csv.save_out chan [row];
+ (* Flush the output to the file immediately because we don't
+ * explicitly close this file.
+ *)
+ flush chan