v1alpha1

package
v1.5.1 Latest Latest
Warning

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

Go to latest
Published: Jan 26, 2021 License: MIT Imports: 6 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the dashboards v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=dashboards.newrelic.io

Package v1alpha1 contains API Schema definitions for the dashboards v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=dashboards.newrelic.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: "dashboards.newrelic.io", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}
)

Functions

This section is empty.

Types

type Apm

type Apm struct {
	// The time frame in seconds
	SinceSeconds int `json:"sinceSeconds,omitempty"`
	// A list of application names for which to get the metric
	Entities []string `json:"entities"`
	// A list of metrics to use
	Metrics []Metric `json:"metrics,omitempty"`
	// +optional
	Facet string `json:"facet,omitempty"`
	// +optional
	OrderBy string `json:"order_by,omitempty"`
}

Apm is the set of metric parameters used for defining the data to plot in the widget

func (*Apm) DeepCopy

func (in *Apm) DeepCopy() *Apm

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Apm.

func (*Apm) DeepCopyInto

func (in *Apm) DeepCopyInto(out *Apm)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Dashboard

type Dashboard struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   DashboardSpec   `json:"spec,omitempty"`
	Status v1alpha1.Status `json:"status,omitempty"`
}

DashboardBody is the Schema for the dashboards API +kubebuilder:subresource:status +kubebuilder:resource:path=dashboards,scope=Namespaced +kubebuilder:printcolumn:name="NR Name",type="string",JSONPath=".spec.title",description="The New Relic name this dashboard" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.status",description="The status of this dashboard" +kubebuilder:printcolumn:name="Newrelic ID",type="string",JSONPath=".status.newrelicId",description="The New Relic ID of this dashboard" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of this dashboard"

func (*Dashboard) DeepCopy

func (in *Dashboard) DeepCopy() *Dashboard

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Dashboard.

func (*Dashboard) DeepCopyInto

func (in *Dashboard) DeepCopyInto(out *Dashboard)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Dashboard) DeepCopyObject

func (in *Dashboard) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type DashboardList

type DashboardList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Dashboard `json:"items"`
}

DashboardList contains a list of DashboardBody

func (*DashboardList) DeepCopy

func (in *DashboardList) DeepCopy() *DashboardList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DashboardList.

func (*DashboardList) DeepCopyInto

func (in *DashboardList) DeepCopyInto(out *DashboardList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DashboardList) DeepCopyObject

func (in *DashboardList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type DashboardSpec

type DashboardSpec struct {
	// The name of the dashboard that will be created in New Relic
	Title string `json:"title"`
	// A list of widgets to add to the dashboard
	Widgets []Widget `json:"widgets"`
}

DashboardSpec defines the desired state of DashboardBody

func (*DashboardSpec) DeepCopy

func (in *DashboardSpec) DeepCopy() *DashboardSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DashboardSpec.

func (*DashboardSpec) DeepCopyInto

func (in *DashboardSpec) DeepCopyInto(out *DashboardSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Data

type Data struct {
	// The text shown on the widget. Use in conjunction with visualization: markdown
	// +optional
	Source string `json:"source,omitempty"`
	// The NRQL query used which defines the data to plot in the widget
	// +optional
	Nrql string `json:"nrql,omitempty"`
	// The APM metric parameters which defines the data to plot in the widget. \
	// When using an APM metric for the data, visualization should be set to either `metric_line_chart` or `application_breakdown`. \
	// +optional
	ApmMetric *Apm `json:"apm,omitempty"`
}

Data represents the data to plot inside the widget. \ Exactly one of Source, Nrql or ApmMetric should be specified. \ \ Leave all fields empty if you want to plot the application breakdown data, \ also present in the main widget that comes with the default application dashboard. \ For more information refer to the official [New Relic documentation](https://docs.newrelic.com/docs/insights/insights-api/manage-dashboards/insights-dashboard-api#dashboard-data)

func (*Data) DeepCopy

func (in *Data) DeepCopy() *Data

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Data.

func (*Data) DeepCopyInto

func (in *Data) DeepCopyInto(out *Data)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Metric

type Metric struct {
	// Name of the metric
	Name string `json:"name"`
	// List of metric values to plot. The available values will depend on the metric you choose. \
	// Check the Data Explorer in New Relic to find out which values are available for which metrics.
	Values []string `json:"values"`
}

Metric is the name of the metric as shown in Data Explorer

func (*Metric) DeepCopy

func (in *Metric) DeepCopy() *Metric

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Metric.

func (*Metric) DeepCopyInto

func (in *Metric) DeepCopyInto(out *Metric)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Widget

type Widget struct {
	// The title of the widget created in New Relic
	Title string `json:"title"`
	// Visualization type to use for the widget. \
	// Available options are: \
	// - `application_breakdown` \
	// - `attribute_sheet` \
	// - `background_breakdown` \
	// - `billboard` \
	// - `billboard_comparison` \
	// - `comparison_line_chart` \
	// - `event_table` \
	// - `facet_bar_chart` \
	// - `facet_pie_chart` \
	// - `facet_table` \
	// - `faceted_area_chart` \
	// - `faceted_line_chart` \
	// - `funnel` \
	// - `gauge` \
	// - `heatmap` \
	// - `histogram` \
	// - `json` \
	// - `line_chart` \
	// - `markdown` \
	// - `list` \
	// - `metric_line_chart` (used for apm metrics) \
	// +kubebuilder:validation:Enum=application_breakdown;attribute_sheet;background_breakdown;billboard;billboard_comparison;comparison_line_chart;event_table;facet_bar_chart;facet_pie_chart;facet_table;faceted_area_chart;faceted_line_chart;funnel;gauge;heatmap;histogram;json;line_chart;list;markdown;metric_line_chart
	Visualization string `json:"visualization"`
	// Notes to add to the widget
	Notes string `json:"notes,omitempty"`
	// The data to plot on the widget
	Data Data `json:"data"`
	// Defines the layout of the widget within the dashboard
	Layout widget.Layout `json:"layout"`
}

Widget defines the widget parameters \ For more details, refer to the official [New Relic documentation](https://docs.newrelic.com/docs/insights/insights-api/manage-dashboards/insights-dashboard-api#widget-data)

func (*Widget) DeepCopy

func (in *Widget) DeepCopy() *Widget

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Widget.

func (*Widget) DeepCopyInto

func (in *Widget) DeepCopyInto(out *Widget)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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