mirror of
https://github.com/open-policy-agent/opa.git
synced 2026-08-12 19:32:48 -06:00
a179a24c48
All packages, except for `cmd` and `internal`, have been moved into a new `v1` root package. Old packages are kept for backwards-compatibility reasons. All contained code is replaced with simple type aliases and proxy functions to `v1` implementations. Old packages default to the Rego v0 syntax, new `v1` packages default to the Rego v1 syntax. Signed-off-by: Johan Fylling <johan.dev@fylling.se>
66 lines
2.0 KiB
Go
66 lines
2.0 KiB
Go
// Copyright 2018 The OPA Authors. All rights reserved.
|
|
// Use of this source code is governed by an Apache2
|
|
// license that can be found in the LICENSE file.
|
|
|
|
// Package logs implements decision log buffering and uploading.
|
|
package logs
|
|
|
|
import (
|
|
"github.com/open-policy-agent/opa/plugins"
|
|
v1 "github.com/open-policy-agent/opa/v1/plugins/logs"
|
|
)
|
|
|
|
// Logger defines the interface for decision logging plugins.
|
|
type Logger = v1.Logger
|
|
|
|
// EventV1 represents a decision log event.
|
|
// WARNING: The AST() function for EventV1 must be kept in sync with
|
|
// the struct. Any changes here MUST be reflected in the AST()
|
|
// implementation below.
|
|
type EventV1 = v1.EventV1
|
|
|
|
// BundleInfoV1 describes a bundle associated with a decision log event.
|
|
type BundleInfoV1 = v1.BundleInfoV1
|
|
|
|
type RequestContext = v1.RequestContext
|
|
|
|
type HTTPRequestContext = v1.HTTPRequestContext
|
|
|
|
// ReportingConfig represents configuration for the plugin's reporting behaviour.
|
|
type ReportingConfig = v1.ReportingConfig
|
|
|
|
type RequestContextConfig = v1.RequestContextConfig
|
|
|
|
type HTTPRequestContextConfig = v1.HTTPRequestContextConfig
|
|
|
|
// Config represents the plugin configuration.
|
|
type Config = v1.Config
|
|
|
|
// Plugin implements decision log buffering and uploading.
|
|
type Plugin = v1.Plugin
|
|
|
|
func ParseConfig(config []byte, services []string, pluginList []string) (*Config, error) {
|
|
return v1.ParseConfig(config, services, pluginList)
|
|
}
|
|
|
|
// ConfigBuilder assists in the construction of the plugin configuration.
|
|
type ConfigBuilder = v1.ConfigBuilder
|
|
|
|
// NewConfigBuilder returns a new ConfigBuilder to build and parse the plugin config.
|
|
func NewConfigBuilder() *ConfigBuilder {
|
|
return v1.NewConfigBuilder()
|
|
}
|
|
|
|
// New returns a new Plugin with the given config.
|
|
func New(parsedConfig *Config, manager *plugins.Manager) *Plugin {
|
|
return v1.New(parsedConfig, manager)
|
|
}
|
|
|
|
// Name identifies the plugin on manager.
|
|
const Name = v1.Name
|
|
|
|
// Lookup returns the decision logs plugin registered with the manager.
|
|
func Lookup(manager *plugins.Manager) *Plugin {
|
|
return v1.Lookup(manager)
|
|
}
|