import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Manages an AWS Bedrock AgentCore Online Evaluation Configuration. Online evaluation configurations continuously monitor agent performance by sampling live traffic from CloudWatch logs and applying evaluators to assess agent quality in production. * * > **Note:** CloudWatch Transaction Serach must be [enabled](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Enable-TransactionSearch.html) before using this resource. * * ## Example Usage * * ### Basic Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = new aws.iam.Role("example", { * name: "agentcore-eval-role", * assumeRolePolicy: JSON.stringify({ * Version: "2012-10-17", * Statement: [{ * Effect: "Allow", * Action: "sts:AssumeRole", * Principal: { * Service: "bedrock-agentcore.amazonaws.com", * }, * }], * }), * }); * const exampleLogGroup = new aws.cloudwatch.LogGroup("example", {name: "/aws/agentcore/my-agent-traces"}); * const exampleAgentcoreOnlineEvaluationConfig = new aws.bedrock.AgentcoreOnlineEvaluationConfig("example", { * dataSourceConfig: { * cloudwatchLogs: { * logGroupNames: [exampleLogGroup.name], * serviceNames: ["my_agent_service"], * }, * }, * rule: { * samplingConfig: { * samplingPercentage: 10, * }, * }, * evaluators: [ * { * evaluatorId: "Builtin.Helpfulness", * }, * { * evaluatorId: "Builtin.GoalSuccessRate", * }, * ], * onlineEvaluationConfigName: "my_evaluation_config", * description: "Continuous evaluation of agent performance", * enableOnCreate: true, * evaluationExecutionRoleArn: example.arn, * }); * ``` * * ### With Filters and Session Config * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const filtered = new aws.bedrock.AgentcoreOnlineEvaluationConfig("filtered", { * dataSourceConfig: { * cloudwatchLogs: { * logGroupNames: [example.name], * serviceNames: ["my_agent_service"], * }, * }, * rule: { * samplingConfig: { * samplingPercentage: 50, * }, * sessionConfig: { * sessionTimeoutMinutes: 30, * }, * filters: [{ * value: { * stringValue: "production", * }, * key: "environment", * operator: "Equals", * }], * }, * evaluators: [{ * evaluatorId: "Builtin.Helpfulness", * }], * onlineEvaluationConfigName: "filtered_evaluation", * enableOnCreate: true, * evaluationExecutionRoleArn: exampleAwsIamRole.arn, * }); * ``` * * ## Import * * ### Identity Schema * * #### Required * * - `onlineEvaluationConfigId` (String) ID of the online evaluation config. * * #### Optional * * * `accountId` (String) AWS Account where this resource is managed. * * `region` (String) Region where this resource is managed. * * Using `pulumi import`, import Bedrock AgentCore Online Evaluation Configs using `onlineEvaluationConfigId`. For example: * * ```sh * $ pulumi import aws:bedrock/agentcoreOnlineEvaluationConfig:AgentcoreOnlineEvaluationConfig example my_evaluation_config-aBcDeFgHiJ * ``` */ export declare class AgentcoreOnlineEvaluationConfig extends pulumi.CustomResource { /** * Get an existing AgentcoreOnlineEvaluationConfig resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: AgentcoreOnlineEvaluationConfigState, opts?: pulumi.CustomResourceOptions): AgentcoreOnlineEvaluationConfig; /** * Returns true if the given object is an instance of AgentcoreOnlineEvaluationConfig. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is AgentcoreOnlineEvaluationConfig; /** * Data source configuration specifying where to read agent traces. See `dataSourceConfig` Block below. */ readonly dataSourceConfig: pulumi.Output; /** * Description of the online evaluation configuration. */ readonly description: pulumi.Output; /** * Whether to enable the online evaluation configuration immediately upon creation. */ readonly enableOnCreate: pulumi.Output; /** * ARN of the IAM role that grants permissions to read from CloudWatch logs, write evaluation results, and invoke Amazon Bedrock models for evaluation. */ readonly evaluationExecutionRoleArn: pulumi.Output; /** * List of evaluators to apply during online evaluation. Minimum 1, maximum 10. See `evaluator` Block below. */ readonly evaluators: pulumi.Output; /** * Execution status to enable or disable the online evaluation. Valid values: `ENABLED`, `DISABLED`. Computed on create based on `enableOnCreate`. */ readonly executionStatus: pulumi.Output; /** * ARN of the online evaluation configuration. */ readonly onlineEvaluationConfigArn: pulumi.Output; /** * Unique identifier of the online evaluation configuration. */ readonly onlineEvaluationConfigId: pulumi.Output; /** * Name of the online evaluation configuration. Must start with a letter and contain only alphanumeric characters and underscores, up to 48 characters. */ readonly onlineEvaluationConfigName: pulumi.Output; /** * Configuration specifying where evaluation results are written. See `outputConfig` Block below. */ readonly outputConfigs: pulumi.Output; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ readonly region: pulumi.Output; /** * Evaluation rule defining sampling configuration, filters, and session detection settings. See `rule` Block below. * * The following arguments are optional: */ readonly rule: pulumi.Output; /** * Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. */ readonly tags: pulumi.Output<{ [key: string]: string; } | undefined>; /** * Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. */ readonly tagsAll: pulumi.Output<{ [key: string]: string; }>; readonly timeouts: pulumi.Output; /** * Create a AgentcoreOnlineEvaluationConfig resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: AgentcoreOnlineEvaluationConfigArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering AgentcoreOnlineEvaluationConfig resources. */ export interface AgentcoreOnlineEvaluationConfigState { /** * Data source configuration specifying where to read agent traces. See `dataSourceConfig` Block below. */ dataSourceConfig?: pulumi.Input; /** * Description of the online evaluation configuration. */ description?: pulumi.Input; /** * Whether to enable the online evaluation configuration immediately upon creation. */ enableOnCreate?: pulumi.Input; /** * ARN of the IAM role that grants permissions to read from CloudWatch logs, write evaluation results, and invoke Amazon Bedrock models for evaluation. */ evaluationExecutionRoleArn?: pulumi.Input; /** * List of evaluators to apply during online evaluation. Minimum 1, maximum 10. See `evaluator` Block below. */ evaluators?: pulumi.Input[] | undefined>; /** * Execution status to enable or disable the online evaluation. Valid values: `ENABLED`, `DISABLED`. Computed on create based on `enableOnCreate`. */ executionStatus?: pulumi.Input; /** * ARN of the online evaluation configuration. */ onlineEvaluationConfigArn?: pulumi.Input; /** * Unique identifier of the online evaluation configuration. */ onlineEvaluationConfigId?: pulumi.Input; /** * Name of the online evaluation configuration. Must start with a letter and contain only alphanumeric characters and underscores, up to 48 characters. */ onlineEvaluationConfigName?: pulumi.Input; /** * Configuration specifying where evaluation results are written. See `outputConfig` Block below. */ outputConfigs?: pulumi.Input[] | undefined>; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ region?: pulumi.Input; /** * Evaluation rule defining sampling configuration, filters, and session detection settings. See `rule` Block below. * * The following arguments are optional: */ rule?: pulumi.Input; /** * Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. */ tagsAll?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; timeouts?: pulumi.Input; } /** * The set of arguments for constructing a AgentcoreOnlineEvaluationConfig resource. */ export interface AgentcoreOnlineEvaluationConfigArgs { /** * Data source configuration specifying where to read agent traces. See `dataSourceConfig` Block below. */ dataSourceConfig: pulumi.Input; /** * Description of the online evaluation configuration. */ description?: pulumi.Input; /** * Whether to enable the online evaluation configuration immediately upon creation. */ enableOnCreate: pulumi.Input; /** * ARN of the IAM role that grants permissions to read from CloudWatch logs, write evaluation results, and invoke Amazon Bedrock models for evaluation. */ evaluationExecutionRoleArn: pulumi.Input; /** * List of evaluators to apply during online evaluation. Minimum 1, maximum 10. See `evaluator` Block below. */ evaluators: pulumi.Input[]>; /** * Execution status to enable or disable the online evaluation. Valid values: `ENABLED`, `DISABLED`. Computed on create based on `enableOnCreate`. */ executionStatus?: pulumi.Input; /** * Name of the online evaluation configuration. Must start with a letter and contain only alphanumeric characters and underscores, up to 48 characters. */ onlineEvaluationConfigName: pulumi.Input; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ region?: pulumi.Input; /** * Evaluation rule defining sampling configuration, filters, and session detection settings. See `rule` Block below. * * The following arguments are optional: */ rule: pulumi.Input; /** * Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; timeouts?: pulumi.Input; } //# sourceMappingURL=agentcoreOnlineEvaluationConfig.d.ts.map