funcframework

package
v0.0.0-...-e6c9272 Latest Latest
Warning

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

Go to latest
Published: Jul 11, 2024 License: Apache-2.0 Imports: 21 Imported by: 0

Documentation

Overview

Package funcframework is a Functions Framework implementation for Go. It allows you to register HTTP and event functions, then start an HTTP server serving those functions.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ExecutionIDFromContext

func ExecutionIDFromContext(ctx context.Context) string

func LogWriter

func LogWriter(ctx context.Context) io.WriteCloser

LogWriter returns an io.Writer as a log sink for the request context. One log event is generated for each new line terminated byte sequence written to the io.Writer.

This can be used with common logging frameworks, for example:

import (
  "log"
  "github.com/enadhq/functions-framework-go/funcframework"
)
...
func helloWorld(w http.ResponseWriter, r *http.Request) {
  l := logger.New(funcframework.LogWriter(r.Context()))
  l.Println("hello world!")
}

func RegisterCloudEventFunctionContext

func RegisterCloudEventFunctionContext(ctx context.Context, path string, fn func(context.Context, cloudevents.Event) error) error

RegisterCloudEventFunctionContext registers fn as an cloudevent function.

func RegisterEventFunction

func RegisterEventFunction(path string, fn interface{})

RegisterEventFunction registers fn as an event function. Maintained for backward compatibility. Please use RegisterEventFunctionContext instead.

func RegisterEventFunctionContext

func RegisterEventFunctionContext(ctx context.Context, path string, fn interface{}) error

RegisterEventFunctionContext registers fn as an event function. The function must have two arguments, a context.Context and a struct type depending on the event, and return an error. If fn has the wrong signature, RegisterEventFunction returns an error.

func RegisterHTTPFunction

func RegisterHTTPFunction(path string, fn interface{})

RegisterHTTPFunction registers fn as an HTTP function. Maintained for backward compatibility. Please use RegisterHTTPFunctionContext instead.

func RegisterHTTPFunctionContext

func RegisterHTTPFunctionContext(ctx context.Context, path string, fn func(http.ResponseWriter, *http.Request)) error

RegisterHTTPFunctionContext registers fn as an HTTP function.

func SpanIDFromContext

func SpanIDFromContext(ctx context.Context) string

func Start

func Start(port string) error

Start serves an HTTP server with registered function(s).

func StartHostPort

func StartHostPort(hostname, port string) error

StartHostPort serves an HTTP server with registered function(s) on the given host and port.

func TraceIDFromContext

func TraceIDFromContext(ctx context.Context) string

Types

This section is empty.

Jump to

Keyboard shortcuts

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