-
Notifications
You must be signed in to change notification settings - Fork 17
/
queryDefinition.go
148 lines (120 loc) · 5.1 KB
/
queryDefinition.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
// Code generated by the Pulumi SDK Generator DO NOT EDIT.
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
package logs
import (
"context"
"reflect"
"github.com/pkg/errors"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
// The resource schema for AWSLogs QueryDefinition
type QueryDefinition struct {
pulumi.CustomResourceState
// Optionally define specific log groups as part of your query definition
LogGroupNames pulumi.StringArrayOutput `pulumi:"logGroupNames"`
// A name for the saved query definition
Name pulumi.StringOutput `pulumi:"name"`
// Unique identifier of a query definition
QueryDefinitionId pulumi.StringOutput `pulumi:"queryDefinitionId"`
// The query string to use for this definition
QueryString pulumi.StringOutput `pulumi:"queryString"`
}
// NewQueryDefinition registers a new resource with the given unique name, arguments, and options.
func NewQueryDefinition(ctx *pulumi.Context,
name string, args *QueryDefinitionArgs, opts ...pulumi.ResourceOption) (*QueryDefinition, error) {
if args == nil {
return nil, errors.New("missing one or more required arguments")
}
if args.QueryString == nil {
return nil, errors.New("invalid value for required argument 'QueryString'")
}
var resource QueryDefinition
err := ctx.RegisterResource("aws-native:logs:QueryDefinition", name, args, &resource, opts...)
if err != nil {
return nil, err
}
return &resource, nil
}
// GetQueryDefinition gets an existing QueryDefinition resource's state with the given name, ID, and optional
// state properties that are used to uniquely qualify the lookup (nil if not required).
func GetQueryDefinition(ctx *pulumi.Context,
name string, id pulumi.IDInput, state *QueryDefinitionState, opts ...pulumi.ResourceOption) (*QueryDefinition, error) {
var resource QueryDefinition
err := ctx.ReadResource("aws-native:logs:QueryDefinition", name, id, state, &resource, opts...)
if err != nil {
return nil, err
}
return &resource, nil
}
// Input properties used for looking up and filtering QueryDefinition resources.
type queryDefinitionState struct {
}
type QueryDefinitionState struct {
}
func (QueryDefinitionState) ElementType() reflect.Type {
return reflect.TypeOf((*queryDefinitionState)(nil)).Elem()
}
type queryDefinitionArgs struct {
// Optionally define specific log groups as part of your query definition
LogGroupNames []string `pulumi:"logGroupNames"`
// A name for the saved query definition
Name *string `pulumi:"name"`
// The query string to use for this definition
QueryString string `pulumi:"queryString"`
}
// The set of arguments for constructing a QueryDefinition resource.
type QueryDefinitionArgs struct {
// Optionally define specific log groups as part of your query definition
LogGroupNames pulumi.StringArrayInput
// A name for the saved query definition
Name pulumi.StringPtrInput
// The query string to use for this definition
QueryString pulumi.StringInput
}
func (QueryDefinitionArgs) ElementType() reflect.Type {
return reflect.TypeOf((*queryDefinitionArgs)(nil)).Elem()
}
type QueryDefinitionInput interface {
pulumi.Input
ToQueryDefinitionOutput() QueryDefinitionOutput
ToQueryDefinitionOutputWithContext(ctx context.Context) QueryDefinitionOutput
}
func (*QueryDefinition) ElementType() reflect.Type {
return reflect.TypeOf((**QueryDefinition)(nil)).Elem()
}
func (i *QueryDefinition) ToQueryDefinitionOutput() QueryDefinitionOutput {
return i.ToQueryDefinitionOutputWithContext(context.Background())
}
func (i *QueryDefinition) ToQueryDefinitionOutputWithContext(ctx context.Context) QueryDefinitionOutput {
return pulumi.ToOutputWithContext(ctx, i).(QueryDefinitionOutput)
}
type QueryDefinitionOutput struct{ *pulumi.OutputState }
func (QueryDefinitionOutput) ElementType() reflect.Type {
return reflect.TypeOf((**QueryDefinition)(nil)).Elem()
}
func (o QueryDefinitionOutput) ToQueryDefinitionOutput() QueryDefinitionOutput {
return o
}
func (o QueryDefinitionOutput) ToQueryDefinitionOutputWithContext(ctx context.Context) QueryDefinitionOutput {
return o
}
// Optionally define specific log groups as part of your query definition
func (o QueryDefinitionOutput) LogGroupNames() pulumi.StringArrayOutput {
return o.ApplyT(func(v *QueryDefinition) pulumi.StringArrayOutput { return v.LogGroupNames }).(pulumi.StringArrayOutput)
}
// A name for the saved query definition
func (o QueryDefinitionOutput) Name() pulumi.StringOutput {
return o.ApplyT(func(v *QueryDefinition) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
}
// Unique identifier of a query definition
func (o QueryDefinitionOutput) QueryDefinitionId() pulumi.StringOutput {
return o.ApplyT(func(v *QueryDefinition) pulumi.StringOutput { return v.QueryDefinitionId }).(pulumi.StringOutput)
}
// The query string to use for this definition
func (o QueryDefinitionOutput) QueryString() pulumi.StringOutput {
return o.ApplyT(func(v *QueryDefinition) pulumi.StringOutput { return v.QueryString }).(pulumi.StringOutput)
}
func init() {
pulumi.RegisterInputType(reflect.TypeOf((*QueryDefinitionInput)(nil)).Elem(), &QueryDefinition{})
pulumi.RegisterOutputType(QueryDefinitionOutput{})
}