diago

package module
v1.2.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 29, 2025 License: BSD-3-Clause Imports: 8 Imported by: 2

README

Diago

Diago: the addictive tool. Friendly design, logging

GoDoc GitHub stars Go Report Card codecov

Versions

Stable Version GitHub Release GitHub Release

How it looks ?

Diago

Introduction

Diago is diagnostic panel wrote in go for websites. It should help you improve, debug your application.

Latency Extension

⚠️ If you want use Latency Extension than You must register it as first!

Route Extension

Route extension was moved to gouef/router

Custom Extension

You can write your own extension, Diago is ready for it!

You must use interface DiagoExtension.

For inspiration I recommend look to exists extensions.

Contributors

JanGalek actions-user

Documentation

Index

Constants

View Source
const (
	ContentType_HTML  = "text/html"
	ContentType_PLAIN = "text/plain"

	Charset_UTF8 = "utf-8"
	Charset_ALL  = "*"
)

Variables

View Source
var DiagoLatencyPanelTemplate string
View Source
var DiagoPanelTemplate string

Functions

func GetDiagoLatencyPanelTemplate added in v0.1.7

func GetDiagoLatencyPanelTemplate() string

func GetDiagoPanelTemplate added in v0.1.7

func GetDiagoPanelTemplate() string

func Middleware added in v1.2.1

func Middleware(r *router.Router, d *Diago) gin.HandlerFunc

Types

type ContentType added in v1.2.0

type ContentType struct {
	Types    []string
	Charsets []string
}

type Data added in v1.2.1

type Data struct {
	ExtensionsPanelHtml []template.HTML
	ExtensionsJSHtml    []template.HTML
	ExtensionsHtml      []template.HTML
}

type DefaultPanelGenerator added in v1.1.0

type DefaultPanelGenerator struct{}

func NewDefaultPanelGenerator added in v1.1.0

func NewDefaultPanelGenerator() *DefaultPanelGenerator

func (*DefaultPanelGenerator) GenerateHTML added in v1.1.0

func (d *DefaultPanelGenerator) GenerateHTML(name string, templateProvider TemplateProvider, data interface{}) (string, error)

type DefaultTemplateProvider added in v1.1.0

type DefaultTemplateProvider struct{}

func NewDefaultTemplateProvider added in v1.1.0

func NewDefaultTemplateProvider() *DefaultTemplateProvider

func (DefaultTemplateProvider) GetTemplate added in v1.1.0

func (p DefaultTemplateProvider) GetTemplate() string

type Diago

type Diago struct {
	Extensions          []Extension
	TemplateProvider    TemplateProvider
	PanelGenerator      PanelGenerator
	AllowedContentTypes ContentType
}

func NewDiago

func NewDiago() *Diago

func (*Diago) AddContentCharset added in v1.2.0

func (d *Diago) AddContentCharset(charset string) *Diago

func (*Diago) AddContentType added in v1.2.0

func (d *Diago) AddContentType(typeString string) *Diago

func (*Diago) AddExtension

func (d *Diago) AddExtension(extension Extension) *Diago

func (*Diago) ContainsMIME added in v1.2.0

func (d *Diago) ContainsMIME(header string) bool

func (*Diago) GetExtensions

func (d *Diago) GetExtensions() []Extension

func (*Diago) SetAllowedContentTypes added in v1.2.0

func (d *Diago) SetAllowedContentTypes(contentType ContentType) *Diago

type Extension added in v1.1.0

type Extension interface {
	GetPanelHtml(c *gin.Context) string
	GetHtml(c *gin.Context) string
	GetJSHtml(c *gin.Context) string
	BeforeNext(c *gin.Context)
	AfterNext(c *gin.Context)
	SetTemplateProvider(provider TemplateProvider)
	GetTemplateProvider() TemplateProvider
	SetPanelGenerator(generator PanelGenerator)
	GetPanelGenerator() PanelGenerator
}

type PanelGenerator added in v1.1.0

type PanelGenerator interface {
	GenerateHTML(name string, templateProvider TemplateProvider, data interface{}) (string, error)
}

type TemplateProvider added in v1.1.0

type TemplateProvider interface {
	GetTemplate() string
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL