Skip to content
Go implementation of Data Aggregation System (DAS) for CMS experiment
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin
config
css
das
dasmaps
dasql
examples
images
js
maps
mongo
monitor
services
templates
test
utils
web
.gitignore
.travis.yml
LICENSE
Makefile
README.md
dasconfig.json
main.go

README.md

das2go

Build Status Go Report Card GoDoc

Go implementation of DAS (Data Aggregation System for CMS)

Installation & Usage

To compile the server you need a Go compiler, then perform the following:

# one time operation, setup your GOPATH and download the following
go get github.com/dmwm/cmsauth
go get github.com/vkuznet/x509proxy
go get gopkg.in/mgo.v2

# to build DAS server run
make

It will build das2go executable which you can fetch from UNIX shell. By default it serves requests on localhost:8000, feel free to modify code accoringly.

Profiling DAS server

DAS server supports three ways to profile itself

  • net/http/pprof
    • it can be done either by login to http://localhost:8217/debug/pprof/ or
    • go tool pprof http://localhost:8217/debug/pprof/heap
    • go tool pprof http://localhost:8217/debug/pprof/block
    • go tool pprof http://localhost:8217/debug/pprof/profile
    • go tool pprof http://localhost:8217/debug/pprof/mutex
  • expvar
    • compile and use expvarmon tool, e.g. expvarmon -ports="8217"
  • FlameGraph and go-torch
    • go-torch -u http://localhost:8217 --seconds 10 will generate svg flame graph

Adding debugging information

It is possible to change verbosity level and log type of running DAS server. To change verbosity level please issue the following command:

# increase verbose level to 1
scurl -X POST -d '{"level":1}' http://localhost:8217/das/server
# set verbose level to 0
scurl -X POST -d '{"level":0}' http://localhost:8217/das/server

To change log type please use this command:

# to change log formatter to json
scurl -X POST -d '{"logFormatter":"json"}' http://localhost:8217/das/server
# to change log formatter to text
scurl -X POST -d '{"logFormatter":"text"}' http://localhost:8217/das/server
You can’t perform that action at this time.