compass

package
v0.10.2 Latest Latest
Warning

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

Go to latest
Published: Jan 19, 2024 License: Apache-2.0 Imports: 20 Imported by: 0

README

Compass

Compass is a search and discovery engine built for querying application deployments, datasets and meta resources. It can also optionally track data flow relationships between these resources and allow the user to view a representation of the data flow graph.

Usage

sinks:
  name: compass
  config:
    host: https://compass.com
    headers:
      compass-User-Email: meteor@gotocompany.com
      Header-1: value11,value12
    labels:
      myCustom: $properties.attributes.myCustomField
      sampleLabel: $properties.labels.sampleLabelField
    remove_unset_fields_in_data: false
Notes
  • Setting remove_unset_fields_in_data to true will not populate fields in final data which are not set initially in source. Defaults to false.

Contributing

Refer to the contribution guidelines for information on contributing to this module.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func New

func New(c httpClient, logger log.Logger) plugins.Syncer

Types

type Asset

type Asset struct {
	URN         string            `json:"urn"`
	Type        string            `json:"type"`
	Name        string            `json:"name"`
	Service     string            `json:"service"`
	Description string            `json:"description"`
	URL         string            `json:"url"`
	Owners      []Owner           `json:"owners"`
	Data        interface{}       `json:"data"`
	Labels      map[string]string `json:"labels"`
}

type Config

type Config struct {
	Host    string            `mapstructure:"host" validate:"required"`
	Headers map[string]string `mapstructure:"headers"`
	Labels  map[string]string `mapstructure:"labels"`
	// RemoveUnsetFieldsInData if set to true do not populate fields in final sink data which are unset in initial data.
	RemoveUnsetFieldsInData bool `mapstructure:"remove_unset_fields_in_data"`
}

type LineageRecord

type LineageRecord struct {
	URN     string `json:"urn"`
	Type    string `json:"type"`
	Service string `json:"service"`
}

type Owner

type Owner struct {
	URN   string `json:"urn"`
	Name  string `json:"name"`
	Role  string `json:"role"`
	Email string `json:"email"`
}

type RequestPayload

type RequestPayload struct {
	Asset       Asset           `json:"asset"`
	Upstreams   []LineageRecord `json:"upstreams"`
	Downstreams []LineageRecord `json:"downstreams"`
}

type Sink

type Sink struct {
	plugins.BasePlugin
	// contains filtered or unexported fields
}

func (*Sink) Close

func (*Sink) Close() error

func (*Sink) Init

func (s *Sink) Init(ctx context.Context, config plugins.Config) error

func (*Sink) Sink

func (s *Sink) Sink(ctx context.Context, batch []models.Record) error

Jump to

Keyboard shortcuts

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