...

Package stackdump

import "github.com/golang/glog/internal/stackdump"
Overview
Index

Overview ▾

Package stackdump provides wrappers for runtime.Stack and runtime.Callers with uniform support for skipping caller frames.

⚠ Unlike the functions in the runtime package, these may allocate a non-trivial quantity of memory: use them with care. ⚠

func CallerPC

func CallerPC(skipDepth int) []uintptr

CallerPC returns a dump of the program counters of the stack starting skipDepth frames before the caller. (CallerPC(0) provides a dump starting at the caller of this function.)

func CallerText

func CallerText(skipDepth int) []byte

CallerText returns a textual dump of the stack starting skipDepth frames before the caller. (CallerText(0) provides a dump starting at the caller of this function.)

type Stack

Stack is a stack dump for a single goroutine.

type Stack struct {
    // Text is a representation of the stack dump in a human-readable format.
    Text []byte

    // PC is a representation of the stack dump using raw program counter values.
    PC []uintptr
}

func Caller

func Caller(skipDepth int) Stack

Caller returns the Stack dump for the calling goroutine, starting skipDepth frames before the caller of Caller. (Caller(0) provides a dump starting at the caller of this function.)

func (Stack) String

func (s Stack) String() string