Popularity
1.8
Growing
Activity
4.3
Declining
21
0
1

Programming language: Go
Tags: Miscellaneous     Strings    
Latest version: v1.1.0

gosh alternatives and similar packages

Based on the "Strings" category

Do you think we are missing an alternative of gosh or a related project?

Add another 'Strings' Package

README

Go Statistics Handler

GitHub Actions codecov Go Report Card GoDoc GitHub license

About

  • This Repository is provided following functions.
    • Go runtime statistics struct.
    • Go runtime statistics API handler.
    • Go runtime measure method.
  • You can specify the favorite JSON encoder.

Install

$ go get -u github.com/osamingo/gosh

Usage

Example

package main

import (
    "encoding/json"
    "io"
    "log"
    "net/http"

    "github.com/osamingo/gosh"
)

func main() {

    h, err := gosh.NewStatisticsHandler(func(w io.Writer) gosh.JSONEncoder {
        return json.NewEncoder(w)
    })
    if err != nil {
        log.Fatalln(err)
    }

    mux := http.NewServeMux()
    mux.Handle("/healthz", h)

    if err := http.ListenAndServe(":8080", mux); err != nil {
        log.Fatalln(err)
    }
}

Output

$ curl "localhost:8080/healthz" | jq .
{
  "timestamp": 1527317620,
  "go_version": "go1.10.2",
  "go_os": "darwin",
  "go_arch": "amd64",
  "cpu_num": 8,
  "goroutine_num": 6,
  "gomaxprocs": 8,
  "cgo_call_num": 1,
  "memory_alloc": 422272,
  "memory_total_alloc": 422272,
  "memory_sys": 3084288,
  "memory_lookups": 6,
  "memory_mallocs": 4720,
  "memory_frees": 71,
  "stack_inuse": 491520,
  "heap_alloc": 422272,
  "heap_sys": 1605632,
  "heap_idle": 401408,
  "heap_inuse": 1204224,
  "heap_released": 0,
  "heap_objects": 4649,
  "gc_next": 4473924,
  "gc_last": 0,
  "gc_num": 0,
  "gc_per_second": 0,
  "gc_pause_per_second": 0,
  "gc_pause": []
}

License

Released under the MIT License.


*Note that all licence references and agreements mentioned in the gosh README section above are relevant to that project's source code only.