From c2372e55d0efd4d9afd493daa637faeb76026539 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Thu, 13 Oct 2016 00:33:28 +0200 Subject: inital checking for s5proxy --- src/daq/s5proxy/.gitignore | 4 ++ src/daq/s5proxy/Makefile | 70 ++++++++++++++++++++++++++++++++++ src/daq/s5proxy/sample.json | 9 +++++ src/daq/s5proxy/src/s5proxy/s5proxy.go | 57 +++++++++++++++++++++++++++ 4 files changed, 140 insertions(+) create mode 100644 src/daq/s5proxy/.gitignore create mode 100644 src/daq/s5proxy/Makefile create mode 100644 src/daq/s5proxy/sample.json create mode 100644 src/daq/s5proxy/src/s5proxy/s5proxy.go (limited to 'src/daq/s5proxy') diff --git a/src/daq/s5proxy/.gitignore b/src/daq/s5proxy/.gitignore new file mode 100644 index 0000000..c63ff13 --- /dev/null +++ b/src/daq/s5proxy/.gitignore @@ -0,0 +1,4 @@ +/bin +/pkg +*.a +*.o diff --git a/src/daq/s5proxy/Makefile b/src/daq/s5proxy/Makefile new file mode 100644 index 0000000..f737d2d --- /dev/null +++ b/src/daq/s5proxy/Makefile @@ -0,0 +1,70 @@ +# +# sfive +# +# sfive - spreadspace streaming statistics suite is a generic +# statistic collection tool for streaming server infrastuctures. +# The system collects and stores meta data like number of views +# and throughput from a number of streaming servers and stores +# it in a global data store. +# The data acquisition is designed to be generic and extensible in +# order to support different streaming software. +# sfive also contains tools and applications to filter and visualize +# live and recorded data. +# +# +# Copyright (C) 2014-2016 Christian Pointner +# Markus Grüneis +# +# This file is part of sfive. +# +# sfive is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 3 +# as published by the Free Software Foundation. +# +# sfive is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with sfive. If not, see . +# + +curdir:= $(shell pwd) +GOCMD := GOPATH=$(curdir) go + +EXECUTEABLE := s5proxy + +#LIBS := "" + + +.PHONY: getlibs updatelibs vet format build clean distclean +all: build + + +getlibs: +# @$(foreach lib,$(LIBS), echo "fetching lib: $(lib)"; $(GOCMD) get $(lib);) + +updatelibs: +# @$(foreach lib,$(LIBS), echo "updating lib: $(lib)"; $(GOCMD) get -u $(lib);) + +vet: + @echo "vetting: $(EXECUTEABLE)" + @$(GOCMD) vet $(EXECUTEABLE) + +format: + @echo "formating: $(EXECUTEABLE)" + @$(GOCMD) fmt $(EXECUTEABLE) + +build: getlibs + @echo "installing: $(EXECUTEABLE)" + @$(GOCMD) install $(EXECUTEABLE) + + +clean: + rm -rf pkg/*/$(EXECUTEABLE) + rm -rf bin + +distclean: clean + @$(foreach dir,$(shell ls src/),$(if $(subst $(EXECUTEABLE),,$(dir)),$(shell rm -rf src/$(dir)))) + rm -rf pkg diff --git a/src/daq/s5proxy/sample.json b/src/daq/s5proxy/sample.json new file mode 100644 index 0000000..8086a82 --- /dev/null +++ b/src/daq/s5proxy/sample.json @@ -0,0 +1,9 @@ +{ + 'listen': ':8443', + 'connect': ':8000', + 'request_header': { + } + 'response_header': { + 'Cache-Control': 'no-cache' + } +} diff --git a/src/daq/s5proxy/src/s5proxy/s5proxy.go b/src/daq/s5proxy/src/s5proxy/s5proxy.go new file mode 100644 index 0000000..65e653d --- /dev/null +++ b/src/daq/s5proxy/src/s5proxy/s5proxy.go @@ -0,0 +1,57 @@ +// +// sfive +// +// sfive - spreadspace streaming statistics suite is a generic +// statistic collection tool for streaming server infrastuctures. +// The system collects and stores meta data like number of views +// and throughput from a number of streaming servers and stores +// it in a global data store. +// The data acquisition is designed to be generic and extensible in +// order to support different streaming software. +// sfive also contains tools and applications to filter and visualize +// live and recorded data. +// +// +// Copyright (C) 2014-2016 Christian Pointner +// Markus Grüneis +// +// This file is part of sfive. +// +// sfive is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License version 3 +// as published by the Free Software Foundation. +// +// sfive is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with sfive. If not, see . +// + +package main + +import ( + "flag" + "log" + "os" +) + +var s5l = log.New(os.Stderr, "[s5]\t", log.LstdFlags) + +func main() { + config := flag.String("config", "/etc/s5proxy/default.json", "path to the config file") + + help := flag.Bool("help", false, "show usage") + + flag.Parse() + + s5l.Printf("Hello, world.\n") + if *help { + flag.Usage() + return + } + + s5l.Printf("reading config from: %s", *config) +} -- cgit v1.2.3