# Resource:<span pulumi-lang-nodejs=" honeycombio.DerivedColumn
" pulumi-lang-dotnet=" honeycombio.DerivedColumn " pulumi-lang-go=" DerivedColumn " pulumi-lang-python=" DerivedColumn " pulumi-lang-yaml=" honeycombio.DerivedColumn " pulumi-lang-java=" honeycombio.DerivedColumn “> honeycombio.DerivedColumn Creates a derived column. For more information about derived columns, check out Calculate with derived columns.
Example Usage
Dataset-specific
import * as pulumi from "@pulumi/pulumi";
import * as honeycombio from "@pulumi/honeycombio";
const config = new pulumi.Config();
const dataset = config.require("dataset");
const anyError = new honeycombio.DerivedColumn("any_error", {
alias: "dc.any_error",
expression: "COALESCE($error.message, $app.legacy_error)",
description: "Collapse OTEL semantic convention and legacy error messages into one field",
dataset: dataset,
});
import pulumi
import pulumi_honeycombio as honeycombio
config = pulumi.Config()
dataset = config.require("dataset")
any_error = honeycombio.DerivedColumn("any_error",
alias="dc.any_error",
expression="COALESCE($error.message, $app.legacy_error)",
description="Collapse OTEL semantic convention and legacy error messages into one field",
dataset=dataset)
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/honeycombio/honeycombio"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cfg := config.New(ctx, "")
dataset := cfg.Require("dataset")
_, err := honeycombio.NewDerivedColumn(ctx, "any_error", &honeycombio.DerivedColumnArgs{
Alias: pulumi.String("dc.any_error"),
Expression: pulumi.String("COALESCE($error.message, $app.legacy_error)"),
Description: pulumi.String("Collapse OTEL semantic convention and legacy error messages into one field"),
Dataset: pulumi.String(dataset),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Honeycombio = Pulumi.Honeycombio;
return await Deployment.RunAsync(() =>
{
var config = new Config();
var dataset = config.Require("dataset");
var anyError = new Honeycombio.DerivedColumn("any_error", new()
{
Alias = "dc.any_error",
Expression = "COALESCE($error.message, $app.legacy_error)",
Description = "Collapse OTEL semantic convention and legacy error messages into one field",
Dataset = dataset,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.honeycombio.DerivedColumn;
import com.pulumi.honeycombio.DerivedColumnArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var config = ctx.config();
final var dataset = config.get("dataset");
var anyError = new DerivedColumn("anyError", DerivedColumnArgs.builder()
.alias("dc.any_error")
.expression("COALESCE($error.message, $app.legacy_error)")
.description("Collapse OTEL semantic convention and legacy error messages into one field")
.dataset(dataset)
.build());
}
}
configuration:
dataset:
type: string
resources:
anyError:
type: honeycombio:DerivedColumn
name: any_error
properties:
alias: dc.any_error
expression: COALESCE($error.message, $app.legacy_error)
description: Collapse OTEL semantic convention and legacy error messages into one field
dataset: ${dataset}
Environment-wide
import * as pulumi from "@pulumi/pulumi";
import * as honeycombio from "@pulumi/honeycombio";
const durationMsLog = new honeycombio.DerivedColumn("duration_ms_log", {
alias: "dc.duration_ms_log10",
expression: "LOG10($duration_ms)",
description: "LOG10 of duration_ms",
});
import pulumi
import pulumi_honeycombio as honeycombio
duration_ms_log = honeycombio.DerivedColumn("duration_ms_log",
alias="dc.duration_ms_log10",
expression="LOG10($duration_ms)",
description="LOG10 of duration_ms")
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/honeycombio/honeycombio"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := honeycombio.NewDerivedColumn(ctx, "duration_ms_log", &honeycombio.DerivedColumnArgs{
Alias: pulumi.String("dc.duration_ms_log10"),
Expression: pulumi.String("LOG10($duration_ms)"),
Description: pulumi.String("LOG10 of duration_ms"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Honeycombio = Pulumi.Honeycombio;
return await Deployment.RunAsync(() =>
{
var durationMsLog = new Honeycombio.DerivedColumn("duration_ms_log", new()
{
Alias = "dc.duration_ms_log10",
Expression = "LOG10($duration_ms)",
Description = "LOG10 of duration_ms",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.honeycombio.DerivedColumn;
import com.pulumi.honeycombio.DerivedColumnArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var durationMsLog = new DerivedColumn("durationMsLog", DerivedColumnArgs.builder()
.alias("dc.duration_ms_log10")
.expression("LOG10($duration_ms)")
.description("LOG10 of duration_ms")
.build());
}
}
resources:
durationMsLog:
type: honeycombio:DerivedColumn
name: duration_ms_log
properties:
alias: dc.duration_ms_log10
expression: LOG10($duration_ms)
description: LOG10 of duration_ms
Complex Formula
import * as pulumi from "@pulumi/pulumi";
import * as honeycombio from "@pulumi/honeycombio";
const sliCalculation = new honeycombio.DerivedColumn("sli_calculation", {
expression: ` IF(
service.name = \\"Backend\\" AND name = \\"HandleRequest\\",
!EXISTS(error.message)
)
`,
alias: "sli.errors",
description: "Return true if the request succeeded without error in the `Backend` service",
});
import pulumi
import pulumi_honeycombio as honeycombio
sli_calculation = honeycombio.DerivedColumn("sli_calculation",
expression=""" IF(
$service.name = \"Backend\" AND $name = \"HandleRequest\",
!EXISTS($error.message)
)
""",
alias="sli.errors",
description="Return true if the request succeeded without error in the `Backend` service")
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/honeycombio/honeycombio"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := honeycombio.NewDerivedColumn(ctx, "sli_calculation", &honeycombio.DerivedColumnArgs{
Expression: pulumi.String(" IF(\n $service.name = \\\"Backend\\\" AND $name = \\\"HandleRequest\\\",\n !EXISTS($error.message)\n )\n"),
Alias: pulumi.String("sli.errors"),
Description: pulumi.String("Return true if the request succeeded without error in the `Backend` service"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Honeycombio = Pulumi.Honeycombio;
return await Deployment.RunAsync(() =>
{
var sliCalculation = new Honeycombio.DerivedColumn("sli_calculation", new()
{
Expression = @" IF(
$service.name = \""Backend\"" AND $name = \""HandleRequest\"",
!EXISTS($error.message)
)
",
Alias = "sli.errors",
Description = "Return true if the request succeeded without error in the `Backend` service",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.honeycombio.DerivedColumn;
import com.pulumi.honeycombio.DerivedColumnArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var sliCalculation = new DerivedColumn("sliCalculation", DerivedColumnArgs.builder()
.expression("""
IF(
$service.name = \"Backend\" AND $name = \"HandleRequest\",
!EXISTS($error.message)
)
""")
.alias("sli.errors")
.description("Return true if the request succeeded without error in the `Backend` service")
.build());
}
}
resources:
sliCalculation:
type: honeycombio:DerivedColumn
name: sli_calculation
properties:
expression: |2
IF(
$service.name = \"Backend\" AND $name = \"HandleRequest\",
!EXISTS($error.message)
)
alias: sli.errors
description: Return true if the request succeeded without error in the `Backend` service
Create DerivedColumn Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new DerivedColumn(name: string, args: DerivedColumnArgs, opts?: CustomResourceOptions);@overload
def DerivedColumn(resource_name: str,
args: DerivedColumnArgs,
opts: Optional[ResourceOptions] = None)
@overload
def DerivedColumn(resource_name: str,
opts: Optional[ResourceOptions] = None,
alias: Optional[str] = None,
expression: Optional[str] = None,
dataset: Optional[str] = None,
derived_column_id: Optional[str] = None,
description: Optional[str] = None)func NewDerivedColumn(ctx *Context, name string, args DerivedColumnArgs, opts ...ResourceOption) (*DerivedColumn, error)public DerivedColumn(string name, DerivedColumnArgs args, CustomResourceOptions? opts = null)
public DerivedColumn(String name, DerivedColumnArgs args)
public DerivedColumn(String name, DerivedColumnArgs args, CustomResourceOptions options)
type: honeycombio:DerivedColumn
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args DerivedColumnArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args DerivedColumnArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args DerivedColumnArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args DerivedColumnArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args DerivedColumnArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var derivedColumnResource = new Honeycombio.DerivedColumn("derivedColumnResource", new()
{
Alias = "string",
Expression = "string",
Dataset = "string",
DerivedColumnId = "string",
Description = "string",
});
example, err := honeycombio.NewDerivedColumn(ctx, "derivedColumnResource", &honeycombio.DerivedColumnArgs{
Alias: pulumi.String("string"),
Expression: pulumi.String("string"),
Dataset: pulumi.String("string"),
DerivedColumnId: pulumi.String("string"),
Description: pulumi.String("string"),
})
var derivedColumnResource = new DerivedColumn("derivedColumnResource", DerivedColumnArgs.builder()
.alias("string")
.expression("string")
.dataset("string")
.derivedColumnId("string")
.description("string")
.build());
derived_column_resource = honeycombio.DerivedColumn("derivedColumnResource",
alias="string",
expression="string",
dataset="string",
derived_column_id="string",
description="string")
const derivedColumnResource = new honeycombio.DerivedColumn("derivedColumnResource", {
alias: "string",
expression: "string",
dataset: "string",
derivedColumnId: "string",
description: "string",
});
type: honeycombio:DerivedColumn
properties:
alias: string
dataset: string
derivedColumnId: string
description: string
expression: string
DerivedColumn Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The DerivedColumn resource accepts the following input properties:
- Alias string
- The alias of the derived column. Must be unique within the dataset or environment.
- Expression string
- The formula of the derived column. See Derived Column Syntax.
- Dataset string
- The dataset this derived column belongs to. If not set, it will be Environment-wide.
- Derived
Column stringId - The ID of this resource.
- Description string
- A description of the derived column.
- Alias string
- The alias of the derived column. Must be unique within the dataset or environment.
- Expression string
- The formula of the derived column. See Derived Column Syntax.
- Dataset string
- The dataset this derived column belongs to. If not set, it will be Environment-wide.
- Derived
Column stringId - The ID of this resource.
- Description string
- A description of the derived column.
- alias String
- The alias of the derived column. Must be unique within the dataset or environment.
- expression String
- The formula of the derived column. See Derived Column Syntax.
- dataset String
- The dataset this derived column belongs to. If not set, it will be Environment-wide.
- derived
Column StringId - The ID of this resource.
- description String
- A description of the derived column.
- alias string
- The alias of the derived column. Must be unique within the dataset or environment.
- expression string
- The formula of the derived column. See Derived Column Syntax.
- dataset string
- The dataset this derived column belongs to. If not set, it will be Environment-wide.
- derived
Column stringId - The ID of this resource.
- description string
- A description of the derived column.
- alias str
- The alias of the derived column. Must be unique within the dataset or environment.
- expression str
- The formula of the derived column. See Derived Column Syntax.
- dataset str
- The dataset this derived column belongs to. If not set, it will be Environment-wide.
- derived_
column_ strid - The ID of this resource.
- description str
- A description of the derived column.
- alias String
- The alias of the derived column. Must be unique within the dataset or environment.
- expression String
- The formula of the derived column. See Derived Column Syntax.
- dataset String
- The dataset this derived column belongs to. If not set, it will be Environment-wide.
- derived
Column StringId - The ID of this resource.
- description String
- A description of the derived column.
Outputs
All input properties are implicitly available as output properties. Additionally, the DerivedColumn resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing DerivedColumn Resource
Get an existing DerivedColumn resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: DerivedColumnState, opts?: CustomResourceOptions): DerivedColumn@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
alias: Optional[str] = None,
dataset: Optional[str] = None,
derived_column_id: Optional[str] = None,
description: Optional[str] = None,
expression: Optional[str] = None) -> DerivedColumnfunc GetDerivedColumn(ctx *Context, name string, id IDInput, state *DerivedColumnState, opts ...ResourceOption) (*DerivedColumn, error)public static DerivedColumn Get(string name, Input<string> id, DerivedColumnState? state, CustomResourceOptions? opts = null)public static DerivedColumn get(String name, Output<String> id, DerivedColumnState state, CustomResourceOptions options)resources: _: type: honeycombio:DerivedColumn get: id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Alias string
- The alias of the derived column. Must be unique within the dataset or environment.
- Dataset string
- The dataset this derived column belongs to. If not set, it will be Environment-wide.
- Derived
Column stringId - The ID of this resource.
- Description string
- A description of the derived column.
- Expression string
- The formula of the derived column. See Derived Column Syntax.
- Alias string
- The alias of the derived column. Must be unique within the dataset or environment.
- Dataset string
- The dataset this derived column belongs to. If not set, it will be Environment-wide.
- Derived
Column stringId - The ID of this resource.
- Description string
- A description of the derived column.
- Expression string
- The formula of the derived column. See Derived Column Syntax.
- alias String
- The alias of the derived column. Must be unique within the dataset or environment.
- dataset String
- The dataset this derived column belongs to. If not set, it will be Environment-wide.
- derived
Column StringId - The ID of this resource.
- description String
- A description of the derived column.
- expression String
- The formula of the derived column. See Derived Column Syntax.
- alias string
- The alias of the derived column. Must be unique within the dataset or environment.
- dataset string
- The dataset this derived column belongs to. If not set, it will be Environment-wide.
- derived
Column stringId - The ID of this resource.
- description string
- A description of the derived column.
- expression string
- The formula of the derived column. See Derived Column Syntax.
- alias str
- The alias of the derived column. Must be unique within the dataset or environment.
- dataset str
- The dataset this derived column belongs to. If not set, it will be Environment-wide.
- derived_
column_ strid - The ID of this resource.
- description str
- A description of the derived column.
- expression str
- The formula of the derived column. See Derived Column Syntax.
- alias String
- The alias of the derived column. Must be unique within the dataset or environment.
- dataset String
- The dataset this derived column belongs to. If not set, it will be Environment-wide.
- derived
Column StringId - The ID of this resource.
- description String
- A description of the derived column.
- expression String
- The formula of the derived column. See Derived Column Syntax.
Import
Dataset-specific derived columns can be imported using a combination of the dataset name and their alias, e.g.
$ pulumi import honeycombio:index/derivedColumn:DerivedColumn my_column my-dataset/any_error
Environment-wide derived columns can be imported using just the alias, e.g.
$ pulumi import honeycombio:index/derivedColumn:DerivedColumn my_column duration_ms_log10
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- honeycombio honeycombio/terraform-provider-honeycombio
- License
- Notes
- This Pulumi package is based on the
honeycombioTerraform Provider.
