Skip to content

Commit

Permalink
Initial server structure
Browse files Browse the repository at this point in the history
  • Loading branch information
diogonicoleti committed Nov 21, 2017
1 parent 6c2bad0 commit b5b10ba
Show file tree
Hide file tree
Showing 3 changed files with 119 additions and 0 deletions.
51 changes: 51 additions & 0 deletions Gopkg.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

22 changes: 22 additions & 0 deletions Gopkg.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@

# Gopkg.toml example
#
# Refer to https://github.com/golang/dep/blob/master/docs/Gopkg.toml.md
# for detailed Gopkg.toml documentation.
#
# required = ["github.com/user/thing/cmd/thing"]
# ignored = ["github.com/user/project/pkgX", "bitbucket.org/user/project/pkgA/pkgY"]
#
# [[constraint]]
# name = "github.com/user/project"
# version = "1.0.0"
#
# [[constraint]]
# name = "github.com/user/project2"
# branch = "dev"
# source = "github.com/myfork/project2"
#
# [[override]]
# name = "github.com/x/y"
# version = "2.4.0"

46 changes: 46 additions & 0 deletions main.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
package main

import (
"fmt"
"net/http"

"github.com/prometheus/common/log"
"gopkg.in/alecthomas/kingpin.v2"
)

var (
version = "0.0.1"
addr = kingpin.Flag("addr", "Address to bind the server").Default(":9112").OverrideDefaultFromEnvar("SERVER_ADDR").String()
apiKey = kingpin.Flag("api-key", "New Relic API key").Default("").OverrideDefaultFromEnvar("NEWRELIC_API_KEY").String()
)

func main() {
kingpin.Version(version)
kingpin.HelpFlag.Short('h')
kingpin.Parse()

log.Info("Starting newrelic_exporter ", version)

log.Info(*apiKey)
if *apiKey == "" {
log.Fatal("You must provide your New Relic API key")
}

http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w,
`
<html>
<head><title>New Relic Exporter</title></head>
<body>
<h1>New Relic Exporter</h1>
<p><a href="/metrics">Metrics</a></p>
</body>
</html>
`)
})

log.Infof("Server listening on %s", *addr)
if err := http.ListenAndServe(*addr, nil); err != nil {
log.Fatalf("Rrror starting server: %s", err)
}
}

0 comments on commit b5b10ba

Please sign in to comment.