Coder Social home page Coder Social logo

terraform-provider-site24x7's People

Contributors

graham-russell avatar jim-billy avatar jim-billy-zoho avatar maheshkumar0422 avatar marchenriot avatar mirzania avatar ponkuma123 avatar sergeylanzman avatar sujithramagesh avatar vikram-chandran avatar vinothdarwin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

terraform-provider-site24x7's Issues

Invalid data error on aws_monitor_site24x7

Hi Team,

I've already created some configuration in site24x7 using terraform but when I'm trying to configure the monitoring to one AWS account, it returns:

Error: Invalid data.
│
│   with site24x7_amazon_monitor.aws_monitor_site24x7,
│   on main.tf line 19, in resource "site24x7_amazon_monitor" "aws_monitor_site24x7":
│   19: resource "site24x7_amazon_monitor" "aws_monitor_site24x7" {

I've tried to do it with IAM User and by assuming a role the same way I would do it on the Site24x7 console.

Code Sample:

resource "site24x7_amazon_monitor" "aws_monitor_site24x7" {
  // (Required) Display name for the monitor
  display_name = "aws_added_via_terraform"
  // (Required) AWS access key
  aws_access_key = var.aws_access_key
  // (Required) AWS secret key
  aws_secret_key = var.aws_secret_key
  // (Optional) AWS discover frequency
  aws_discovery_frequency = 5
  // (Optional) AWS services to discover. See https://www.site24x7.com/help/api/#aws_discover_services
  // for knowing service ID.
  aws_discover_services = ["3"]
}

I would like to request your help.

Many thanks,
Tiago Domingues

Trouble and critical thresholds not supported for SSL_CERT site24x7_threshold_profile

I've created a site24x7_threshold_profile with values set for primary_response_time_trouble_threshold and primary_response_time_critical_threshold but they are not respected when the threshold profile is created by terraform.

I see from the API docs that the site24x7 API doesn't actually support setting these values for an SSL_CERT threshold profile.

We can go into the UI and edit the value which is ok as a workaround for now but it would be ideal if the provider could set these values directly.

This is a reusable module that can either create URL, RESTAPI or SSL_CERT threshold profiles - my variable names trouble_threshold_milliseconds and critical_threshold_milliseconds obviously assume they are going to be used for website and I guess the provider ignores these if type == "SSL_CERT"?

resource "site24x7_threshold_profile" "this" {
  profile_name = var.profile_name
  type         = var.monitor_type
  // (Optional) Threshold profile types - https://www.site24x7.com/help/api/#threshold_profile_types
  // We'll stick with static profiles (1) for now. There are also AI profiles (2)
  profile_type            = 1
  down_location_threshold = var.down_location_threshold

  // (Optional) Response time threshold configuration
  primary_response_time_trouble_threshold = {
    // https://www.site24x7.com/help/api/#threshold_severity
    // 2 - Trouble
    severity = 2
    // https://www.site24x7.com/help/api/#constants
    // 1 - Greater than (>), 2 - Less than (<), 3 - Greater than or equal to (>=), 4 - Less than or equal to (<=), 5 - Equal to (=), 6 - Not Equal to (≠)
    comparison_operator = 1
    // Attribute Threshold Value
    value = var.trouble_threshold_milliseconds
    // https://www.site24x7.com/help/api/#threshold_strategy
    // 1 - Poll Count, 2 - Poll Average, 3 - Time Range, 4 - Average Time
    strategy = 1
    // Poll Check Value
    polls_check = var.trouble_polls_check
  }

  primary_response_time_critical_threshold = {
    // https://www.site24x7.com/help/api/#threshold_severity
    // 3 - Critical
    severity = 3
    // https://www.site24x7.com/help/api/#constants
    // 1 - Greater than (>), 2 - Less than (<), 3 - Greater than or equal to (>=), 4 - Less than or equal to (<=), 5 - Equal to (=), 6 - Not Equal to (≠)
    comparison_operator = 1
    // Attribute Threshold Value
    value = var.critical_threshold_milliseconds
    // https://www.site24x7.com/help/api/#threshold_strategy
    // 1 - Poll Count, 2 - Poll Average, 3 - Time Range, 4 - Average Time
    strategy = 1
    // Poll Check Value
    polls_check = var.critical_polls_check
  }
}

Unable to use tag_names in site24x7_website_monitor

Hi,

We are trying to create a monitor and apply tags by specifying tag_names, but it's not working.

Only the tag_ids approach is working.

My tags are using the following values :

# result from the API call https://www.site24x7.com/api/tags
    {
      "tag_value": "nginx-prod",
      "tag_name": "service",
      "tag_type": 1,
      "tag_color": "#E55445",
      "tag_id": "29977100xxxxxxxxxx"
    },
    {
      "tag_value": "nginx-dev",
      "tag_name": "service",
      "tag_type": 1,
      "tag_color": "#B7DA9E",
      "tag_id": "29977100xxxxxxxxxx"
    },
    {
      "tag_value": "nginx-stage",
      "tag_name": "service",
      "tag_type": 1,
      "tag_color": "#FCEA8B",
      "tag_id": "29977100xxxxxxxxxx"
    },

So I'm trying to use the following syntax in Terraform module, but it's not working

  tag_names = [
    "service:nginx-prod"
  ]

What is the expected syntax ?

Thanks

Thomas

The provider site24x7/site24x7 does not support resource type "site24x7_amazon_monitor".

Using latest site24x7 provider version 1.0.34 (Also tested with 1.0.33) and getting the following error:

│ Error: Invalid resource type │ │ on aws_monitors.tf line 2, in resource "site24x7_amazon_monitor" "aws_monitor_au_nonprod": │ 2: resource "site24x7_amazon_monitor" "aws_monitor_au_nonprod" { │ │ The provider site24x7/site24x7 does not support resource type │ "site24x7_amazon_monitor". ╵ ERRO[0007] 1 error occurred: * exit status 1

EU datacenter doesn't work

The provider doesn't work, if I choose "EU" datacenter in the config. I got following error:
oauth2: server response missing access_token

I think it is because in oauth/oauth.go there is a hard coded TokenURL, and not a dinamically choosed based on the config, like in the actual CRUD actions. So the action can't run, because the authentication (getting the acces_token) happened on a different server, not on which the action tries to run.

With the "US" datacenter, everything works fine!

RestAPI resource weird behaviour with json_schema attribute

I see the error below when I try to use restapi monitor resource and taking into account that I don't use json_schema attribute in my resource at all.
I noticed that restapi tests don't have proper test which include this attribute.

Error: json: cannot unmarshal string into Go struct field RestApiMonitor.json_schema of type map[string]interface {}

json: cannot unmarshal string into Go struct field WebPageSpeedMonitor.browser_type of type int

Terraform and Cloudflare provider version

❯ terraform -v
Terraform v1.3.7
on darwin_arm64
+ provider registry.terraform.io/hashicorp/aws v4.53.0
+ provider registry.terraform.io/site24x7/site24x7 v1.0.47

Bug

the resource "site24x7_web_page_speed_monitor" is created successfully, but the terrform end with an error

Debug output

2023-02-06T20:42:27.727+0800 [DEBUG] Starting graph walk: walkApply
2023-02-06T20:42:27.727+0800 [TRACE] vertex "var.account": starting visit (*terraform.NodeRootVariable)
2023-02-06T20:42:27.727+0800 [TRACE] NodeRootVariable: evaluating var.account
2023-02-06T20:42:27.727+0800 [TRACE] prepareFinalInputVariableValue: preparing var.account
2023-02-06T20:42:27.727+0800 [TRACE] BuiltinEvalContext: Storing final value for variable var.account
2023-02-06T20:42:27.727+0800 [TRACE] evalVariableValidations: no validation rules declared for var.account, so skipping
2023-02-06T20:42:27.727+0800 [TRACE] vertex "var.account": visit complete
2023-02-06T20:42:27.727+0800 [TRACE] vertex "var.git_repo": starting visit (*terraform.NodeRootVariable)
2023-02-06T20:42:27.727+0800 [TRACE] NodeRootVariable: evaluating var.git_repo
2023-02-06T20:42:27.727+0800 [TRACE] prepareFinalInputVariableValue: preparing var.git_repo
2023-02-06T20:42:27.727+0800 [TRACE] prepareFinalInputVariableValue: var.git_repo has a default value
2023-02-06T20:42:27.727+0800 [TRACE] prepareFinalInputVariableValue: var.git_repo has no defined value
2023-02-06T20:42:27.727+0800 [TRACE] BuiltinEvalContext: Storing final value for variable var.git_repo
2023-02-06T20:42:27.727+0800 [TRACE] evalVariableValidations: no validation rules declared for var.git_repo, so skipping
2023-02-06T20:42:27.727+0800 [TRACE] vertex "var.git_repo": visit complete
2023-02-06T20:42:27.727+0800 [TRACE] vertex "var.region": starting visit (*terraform.NodeRootVariable)
2023-02-06T20:42:27.727+0800 [TRACE] NodeRootVariable: evaluating var.region
2023-02-06T20:42:27.727+0800 [TRACE] prepareFinalInputVariableValue: preparing var.region
2023-02-06T20:42:27.727+0800 [TRACE] BuiltinEvalContext: Storing final value for variable var.region
2023-02-06T20:42:27.727+0800 [TRACE] evalVariableValidations: no validation rules declared for var.region, so skipping
2023-02-06T20:42:27.727+0800 [TRACE] vertex "var.region": visit complete
2023-02-06T20:42:27.727+0800 [TRACE] vertex "var.environment": starting visit (*terraform.NodeRootVariable)
2023-02-06T20:42:27.727+0800 [TRACE] NodeRootVariable: evaluating var.environment
2023-02-06T20:42:27.727+0800 [TRACE] prepareFinalInputVariableValue: preparing var.environment
2023-02-06T20:42:27.727+0800 [TRACE] BuiltinEvalContext: Storing final value for variable var.environment
2023-02-06T20:42:27.727+0800 [TRACE] evalVariableValidations: no validation rules declared for var.environment, so skipping
2023-02-06T20:42:27.727+0800 [TRACE] vertex "var.environment": visit complete
2023-02-06T20:42:27.727+0800 [TRACE] vertex "provider[\"registry.terraform.io/site24x7/site24x7\"]": starting visit (*terraform.NodeApplyableProvider)
2023-02-06T20:42:27.727+0800 [TRACE] vertex "var.wps": starting visit (*terraform.NodeRootVariable)
2023-02-06T20:42:27.727+0800 [TRACE] NodeRootVariable: evaluating var.wps
2023-02-06T20:42:27.727+0800 [TRACE] prepareFinalInputVariableValue: preparing var.wps
2023-02-06T20:42:27.727+0800 [TRACE] BuiltinEvalContext: Storing final value for variable var.wps
2023-02-06T20:42:27.727+0800 [TRACE] evalVariableValidations: no validation rules declared for var.wps, so skipping
2023-02-06T20:42:27.728+0800 [TRACE] vertex "var.wps": visit complete
2023-02-06T20:42:27.728+0800 [TRACE] vertex "var.project": starting visit (*terraform.NodeRootVariable)
2023-02-06T20:42:27.728+0800 [TRACE] NodeRootVariable: evaluating var.project
2023-02-06T20:42:27.728+0800 [TRACE] prepareFinalInputVariableValue: preparing var.project
2023-02-06T20:42:27.728+0800 [TRACE] BuiltinEvalContext: Storing final value for variable var.project
2023-02-06T20:42:27.728+0800 [TRACE] evalVariableValidations: no validation rules declared for var.project, so skipping
2023-02-06T20:42:27.728+0800 [TRACE] vertex "var.project": visit complete
2023-02-06T20:42:27.728+0800 [TRACE] vertex "var.env_iam_roles": starting visit (*terraform.NodeRootVariable)
2023-02-06T20:42:27.728+0800 [TRACE] NodeRootVariable: evaluating var.env_iam_roles
2023-02-06T20:42:27.728+0800 [TRACE] prepareFinalInputVariableValue: preparing var.env_iam_roles
[WARN] Invalid log level: "”DEBUG”". Defaulting to level: TRACE. Valid levels are: [TRACE DEBUG INFO WARN ERROR OFF]2023-02-06T20:42:27.728+0800 [TRACE] prepareFinalInputVariableValue: var.env_iam_roles has a default value
2023-02-06T20:42:27.728+0800 [TRACE] prepareFinalInputVariableValue: var.env_iam_roles has no defined value
2023-02-06T20:42:27.728+0800 [TRACE] BuiltinEvalContext: Storing final value for variable var.env_iam_roles
2023-02-06T20:42:27.728+0800 [TRACE] evalVariableValidations: no validation rules declared for var.env_iam_roles, so skipping
2023-02-06T20:42:27.728+0800 [TRACE] vertex "var.env_iam_roles": visit complete
2023-02-06T20:42:27.728+0800 [DEBUG] created provider logger: level=trace
2023-02-06T20:42:27.728+0800 [INFO]  provider: configuring client automatic mTLS
2023-02-06T20:42:27.734+0800 [DEBUG] provider: starting plugin: path=.terraform/providers/registry.terraform.io/site24x7/site24x7/1.0.47/darwin_arm64/terraform-provider-site24x7_v1.0.47 args=[.terraform/providers/registry.terraform.io/site24x7/site24x7/1.0.47/darwin_arm64/terraform-provider-site24x7_v1.0.47]
2023-02-06T20:42:27.737+0800 [DEBUG] provider: plugin started: path=.terraform/providers/registry.terraform.io/site24x7/site24x7/1.0.47/darwin_arm64/terraform-provider-site24x7_v1.0.47 pid=92940
2023-02-06T20:42:27.737+0800 [DEBUG] provider: waiting for RPC address: path=.terraform/providers/registry.terraform.io/site24x7/site24x7/1.0.47/darwin_arm64/terraform-provider-site24x7_v1.0.47
2023-02-06T20:42:27.749+0800 [INFO]  provider.terraform-provider-site24x7_v1.0.47: configuring server automatic mTLS: timestamp=2023-02-06T20:42:27.749+0800
2023-02-06T20:42:27.786+0800 [DEBUG] provider: using plugin: version=5
2023-02-06T20:42:27.786+0800 [DEBUG] provider.terraform-provider-site24x7_v1.0.47: plugin address: address=/var/folders/vz/tx29c3g57wn_qpzqc998d03h0000gn/T/plugin258728315 network=unix timestamp=2023-02-06T20:42:27.785+0800
2023-02-06T20:42:27.803+0800 [TRACE] provider.stdio: waiting for stdio data
2023-02-06T20:42:27.803+0800 [TRACE] BuiltinEvalContext: Initialized "provider[\"registry.terraform.io/site24x7/site24x7\"]" provider for provider["registry.terraform.io/site24x7/site24x7"]
2023-02-06T20:42:27.803+0800 [TRACE] NodeApplyableProvider: configuring provider["registry.terraform.io/site24x7/site24x7"]
2023-02-06T20:42:27.803+0800 [TRACE] buildProviderConfig for provider["registry.terraform.io/site24x7/site24x7"]: using explicit config only
2023-02-06T20:42:27.803+0800 [TRACE] GRPCProvider: GetProviderSchema
2023-02-06T20:42:27.804+0800 [DEBUG] provider.stdio: received EOF, stopping recv loop: err="rpc error: code = Unimplemented desc = unknown service plugin.GRPCStdio"
2023-02-06T20:42:27.804+0800 [DEBUG] No provider meta schema returned
2023-02-06T20:42:27.805+0800 [TRACE] GRPCProvider: ValidateProviderConfig
2023-02-06T20:42:27.807+0800 [TRACE] GRPCProvider: ConfigureProvider
2023-02-06T20:42:27.807+0800 [DEBUG] provider.terraform-provider-site24x7_v1.0.47: time="2023-02-06T20:42:27+08:00" level=info msg="GetAPIBaseURL :  https://www.site24x7.com/api"
2023-02-06T20:42:27.807+0800 [DEBUG] provider.terraform-provider-site24x7_v1.0.47: time="2023-02-06T20:42:27+08:00" level=info msg="GetTokenURL :  https://accounts.zoho.com/oauth/v2/token"
2023-02-06T20:42:27.807+0800 [TRACE] vertex "provider[\"registry.terraform.io/site24x7/site24x7\"]": visit complete
2023-02-06T20:42:27.807+0800 [TRACE] vertex "site24x7_tag.tag_dg (expand)": starting visit (*terraform.nodeExpandApplyableResource)
2023-02-06T20:42:27.808+0800 [TRACE] vertex "site24x7_tag.tag_dg (expand)": expanding dynamic subgraph
2023-02-06T20:42:27.808+0800 [TRACE] vertex "site24x7_tag.tag_dg (expand)": entering dynamic subgraph
2023-02-06T20:42:27.808+0800 [TRACE] vertex "site24x7_tag.tag_dg": starting visit (*terraform.NodeApplyableResource)
2023-02-06T20:42:27.808+0800 [TRACE] vertex "site24x7_tag.tag_dg": visit complete
2023-02-06T20:42:27.808+0800 [TRACE] vertex "site24x7_web_page_speed_monitor.web_page_speed_monitor (expand)": starting visit (*terraform.nodeExpandApplyableResource)
2023-02-06T20:42:27.808+0800 [TRACE] vertex "site24x7_web_page_speed_monitor.web_page_speed_monitor (expand)": expanding dynamic subgraph
2023-02-06T20:42:27.808+0800 [TRACE] vertex "site24x7_web_page_speed_monitor.web_page_speed_monitor (expand)": entering dynamic subgraph
2023-02-06T20:42:27.808+0800 [TRACE] vertex "site24x7_tag.tag_dg (expand)": dynamic subgraph completed successfully
2023-02-06T20:42:27.808+0800 [TRACE] vertex "site24x7_tag.tag_dg (expand)": visit complete
2023-02-06T20:42:27.808+0800 [TRACE] vertex "site24x7_web_page_speed_monitor.web_page_speed_monitor": starting visit (*terraform.NodeApplyableResource)
2023-02-06T20:42:27.808+0800 [TRACE] vertex "site24x7_web_page_speed_monitor.web_page_speed_monitor": visit complete
2023-02-06T20:42:27.808+0800 [TRACE] vertex "site24x7_web_page_speed_monitor.web_page_speed_monitor (expand)": dynamic subgraph completed successfully
2023-02-06T20:42:27.808+0800 [TRACE] vertex "site24x7_web_page_speed_monitor.web_page_speed_monitor (expand)": visit complete
2023-02-06T20:42:27.808+0800 [TRACE] vertex "site24x7_web_page_speed_monitor.web_page_speed_monitor": starting visit (*terraform.NodeApplyableResourceInstance)
2023-02-06T20:42:27.808+0800 [TRACE] vertex "site24x7_tag.tag_dg": starting visit (*terraform.NodeApplyableResourceInstance)
2023-02-06T20:42:27.808+0800 [TRACE] readDiff: Read Create change from plan for site24x7_tag.tag_dg
2023-02-06T20:42:27.808+0800 [TRACE] readResourceInstanceState: reading state for site24x7_tag.tag_dg
2023-02-06T20:42:27.808+0800 [TRACE] readResourceInstanceState: no state present for site24x7_tag.tag_dg
2023-02-06T20:42:27.808+0800 [TRACE] readDiff: Read Create change from plan for site24x7_tag.tag_dg
2023-02-06T20:42:27.808+0800 [TRACE] readDiff: Read Create change from plan for site24x7_web_page_speed_monitor.web_page_speed_monitor
2023-02-06T20:42:27.808+0800 [TRACE] readResourceInstanceState: reading state for site24x7_web_page_speed_monitor.web_page_speed_monitor
2023-02-06T20:42:27.808+0800 [TRACE] readResourceInstanceState: no state present for site24x7_web_page_speed_monitor.web_page_speed_monitor
2023-02-06T20:42:27.808+0800 [TRACE] Re-validating config for "site24x7_tag.tag_dg"
2023-02-06T20:42:27.808+0800 [TRACE] readDiff: Read Create change from plan for site24x7_web_page_speed_monitor.web_page_speed_monitor
2023-02-06T20:42:27.808+0800 [TRACE] GRPCProvider: ValidateResourceConfig
2023-02-06T20:42:27.808+0800 [TRACE] Re-validating config for "site24x7_web_page_speed_monitor.web_page_speed_monitor"
2023-02-06T20:42:27.808+0800 [TRACE] GRPCProvider: ValidateResourceConfig
2023-02-06T20:42:27.808+0800 [TRACE] GRPCProvider: PlanResourceChange
2023-02-06T20:42:27.809+0800 [TRACE] GRPCProvider: PlanResourceChange
2023-02-06T20:42:27.809+0800 [TRACE] checkPlannedChange: Verifying that actual change (action Create) matches planned change (action Create)
site24x7_tag.tag_dg: Creating...
2023-02-06T20:42:27.810+0800 [INFO]  Starting apply for site24x7_tag.tag_dg
2023-02-06T20:42:27.810+0800 [DEBUG] site24x7_tag.tag_dg: applying the planned Create change
2023-02-06T20:42:27.810+0800 [TRACE] GRPCProvider: ApplyResourceChange
2023-02-06T20:42:27.810+0800 [WARN]  Provider "registry.terraform.io/site24x7/site24x7" produced an invalid plan for site24x7_web_page_speed_monitor.web_page_speed_monitor, but we are tolerating it because it is using the legacy plugin SDK.
    The following problems may be the cause of any confusing errors from downstream operations:
      - .browser_type: planned value cty.NumberIntVal(1) for a non-computed attribute
      - .unmatching_keyword_severity: planned value cty.NumberIntVal(2) for a non-computed attribute
      - .matching_keyword_severity: planned value cty.NumberIntVal(2) for a non-computed attribute
      - .match_regex_severity: planned value cty.NumberIntVal(2) for a non-computed attribute
2023-02-06T20:42:27.810+0800 [TRACE] checkPlannedChange: Verifying that actual change (action Create) matches planned change (action Create)
site24x7_web_page_speed_monitor.web_page_speed_monitor: Creating...
2023-02-06T20:42:27.810+0800 [INFO]  Starting apply for site24x7_web_page_speed_monitor.web_page_speed_monitor
2023-02-06T20:42:27.810+0800 [DEBUG] site24x7_web_page_speed_monitor.web_page_speed_monitor: applying the planned Create change
2023-02-06T20:42:27.810+0800 [TRACE] GRPCProvider: ApplyResourceChange
2023-02-06T20:42:27.811+0800 [DEBUG] provider.terraform-provider-site24x7_v1.0.47: 2023/02/06 20:42:27 [DEBUG] setting computed for "tag_ids" from ComputedKeys
2023-02-06T20:42:27.811+0800 [DEBUG] provider.terraform-provider-site24x7_v1.0.47: 2023/02/06 20:42:27 [DEBUG] setting computed for "user_group_ids" from ComputedKeys
2023-02-06T20:42:29.872+0800 [DEBUG] provider.terraform-provider-site24x7_v1.0.47: time="2023-02-06T20:42:29+08:00" level=info msg="Finding match for the location profile name : \"Singapore\" in Site24x7"
2023-02-06T20:42:29.872+0800 [TRACE] NodeAbstractResouceInstance.writeResourceInstanceState to workingState for site24x7_tag.tag_dg
2023-02-06T20:42:29.872+0800 [TRACE] NodeAbstractResouceInstance.writeResourceInstanceState: writing state object for site24x7_tag.tag_dg
2023-02-06T20:42:29.872+0800 [TRACE] NodeAbstractResouceInstance.writeResourceInstanceState to workingState for site24x7_tag.tag_dg
2023-02-06T20:42:29.872+0800 [TRACE] NodeAbstractResouceInstance.writeResourceInstanceState: writing state object for site24x7_tag.tag_dg
site24x7_tag.tag_dg: Creation complete after 2s [id=467584000000038030]
2023-02-06T20:42:29.872+0800 [TRACE] statemgr.Filesystem: creating backup snapshot at terraform.tfstate.backup
2023-02-06T20:42:29.874+0800 [TRACE] statemgr.Filesystem: state has changed since last snapshot, so incrementing serial to 54
2023-02-06T20:42:29.874+0800 [TRACE] statemgr.Filesystem: writing snapshot at terraform.tfstate
2023-02-06T20:42:29.880+0800 [TRACE] vertex "site24x7_tag.tag_dg": visit complete
2023-02-06T20:42:31.635+0800 [DEBUG] provider.terraform-provider-site24x7_v1.0.47: time="2023-02-06T20:42:31+08:00" level=info msg="Monitor Type : HOMEPAGE, Associating the threshold profile : Default Threshold - HOMEPAGE of type : HOMEPAGE"
2023-02-06T20:42:32.533+0800 [TRACE] maybeTainted: site24x7_web_page_speed_monitor.web_page_speed_monitor encountered an error during creation, so it is now marked as tainted
2023-02-06T20:42:32.533+0800 [TRACE] NodeAbstractResouceInstance.writeResourceInstanceState to workingState for site24x7_web_page_speed_monitor.web_page_speed_monitor
2023-02-06T20:42:32.533+0800 [TRACE] NodeAbstractResouceInstance.writeResourceInstanceState: removing state object for site24x7_web_page_speed_monitor.web_page_speed_monitor
2023-02-06T20:42:32.533+0800 [TRACE] evalApplyProvisioners: site24x7_web_page_speed_monitor.web_page_speed_monitor is tainted, so skipping provisioning
2023-02-06T20:42:32.533+0800 [TRACE] maybeTainted: site24x7_web_page_speed_monitor.web_page_speed_monitor was already tainted, so nothing to do
2023-02-06T20:42:32.533+0800 [TRACE] NodeAbstractResouceInstance.writeResourceInstanceState to workingState for site24x7_web_page_speed_monitor.web_page_speed_monitor
2023-02-06T20:42:32.533+0800 [TRACE] NodeAbstractResouceInstance.writeResourceInstanceState: removing state object for site24x7_web_page_speed_monitor.web_page_speed_monitor
2023-02-06T20:42:32.533+0800 [TRACE] statemgr.Filesystem: have already backed up original terraform.tfstate to terraform.tfstate.backup on a previous write
2023-02-06T20:42:32.533+0800 [TRACE] statemgr.Filesystem: state has changed since last snapshot, so incrementing serial to 55
2023-02-06T20:42:32.533+0800 [TRACE] statemgr.Filesystem: writing snapshot at terraform.tfstate
2023-02-06T20:42:32.538+0800 [ERROR] vertex "site24x7_web_page_speed_monitor.web_page_speed_monitor" error: json: cannot unmarshal string into Go struct field WebPageSpeedMonitor.browser_type of type int
2023-02-06T20:42:32.538+0800 [TRACE] vertex "site24x7_web_page_speed_monitor.web_page_speed_monitor": visit complete, with errors
2023-02-06T20:42:32.539+0800 [TRACE] dag/walk: upstream of "provider[\"registry.terraform.io/site24x7/site24x7\"] (close)" errored, so skipping
2023-02-06T20:42:32.539+0800 [TRACE] dag/walk: upstream of "root" errored, so skipping
2023-02-06T20:42:32.539+0800 [TRACE] statemgr.Filesystem: have already backed up original terraform.tfstate to terraform.tfstate.backup on a previous write
2023-02-06T20:42:32.539+0800 [TRACE] statemgr.Filesystem: state has changed since last snapshot, so incrementing serial to 56
2023-02-06T20:42:32.539+0800 [TRACE] statemgr.Filesystem: writing snapshot at terraform.tfstate
╷
│ Error: json: cannot unmarshal string into Go struct field WebPageSpeedMonitor.browser_type of type int
│ 
│   with site24x7_web_page_speed_monitor.web_page_speed_monitor,
│   on resource_page_speed.tf line 2, in resource "site24x7_web_page_speed_monitor" "web_page_speed_monitor":
│    2: resource "site24x7_web_page_speed_monitor" "web_page_speed_monitor" {
│ 
╵
2023-02-06T20:42:32.546+0800 [TRACE] statemgr.Filesystem: removing lock metadata file .terraform.tfstate.lock.info
2023-02-06T20:42:32.546+0800 [TRACE] statemgr.Filesystem: unlocking terraform.tfstate using fcntl flock
2023-02-06T20:42:32.549+0800 [DEBUG] provider: plugin process exited: path=.terraform/providers/registry.terraform.io/site24x7/site24x7/1.0.47/darwin_arm64/terraform-provider-site24x7_v1.0.47 pid=92940
2023-02-06T20:42:32.549+0800 [DEBUG] provider: plugin exited

Plugin error: panic: interface conversion: interface {} is nil, not string

Directly sharing the error trace:

The plugin encountered an error, and failed to respond to the plugin.(*GRPCProvider).ApplyResourceChange call. The plugin logs may contain more details.
╵

Stack trace from the terraform-provider-site24x7_v1.0.24 plugin:

panic: interface conversion: interface {} is nil, not string

goroutine 14 [running]:
github.com/site24x7/terraform-provider-site24x7/site24x7/monitors.resourceDataToWebsiteMonitor(0xc0001d8700, 0x1bff868, 0xc00009f0e0, 0x1bff868, 0xc00009f0e0, 0x0)
	github.com/site24x7/terraform-provider-site24x7/site24x7/monitors/website.go:544 +0x2c2d
github.com/site24x7/terraform-provider-site24x7/site24x7/monitors.websiteMonitorUpdate(0xc0001d8700, 0x1a65680, 0xc00009f0e0, 0x24, 0x2104bc0)
	github.com/site24x7/terraform-provider-site24x7/site24x7/monitors/website.go:395 +0x76
github.com/hashicorp/terraform-plugin-sdk/helper/schema.(*Resource).Apply(0xc00019ee00, 0xc000618190, 0xc0004c92a0, 0x1a65680, 0xc00009f0e0, 0x32a37365646f6301, 0x615f657375a83030, 0x657375a8c06e706c)
	github.com/hashicorp/[email protected]/helper/schema/resource.go:311 +0x273
github.com/hashicorp/terraform-plugin-sdk/helper/schema.(*Provider).Apply(0xc00019f900, 0xc0005218e8, 0xc000618190, 0xc0004c92a0, 0xc0006d9ca8, 0xc0006e0018, 0x1989c60)
	github.com/hashicorp/[email protected]/helper/schema/provider.go:294 +0x99
github.com/hashicorp/terraform-plugin-sdk/internal/helper/plugin.(*GRPCProviderServer).ApplyResourceChange(0xc00010ea30, 0x1bf3670, 0xc00046c660, 0xc000078780, 0xc00010ea30, 0xc00046c660, 0xc000720a50)
	github.com/hashicorp/[email protected]/internal/helper/plugin/grpc_provider.go:885 +0x88b
github.com/hashicorp/terraform-plugin-sdk/internal/tfplugin5._Provider_ApplyResourceChange_Handler(0x1a5c020, 0xc00010ea30, 0x1bf3670, 0xc00046c660, 0xc000078720, 0x0, 0x1bf3670, 0xc00046c660, 0xc0004f4800, 0xae5)
	github.com/hashicorp/[email protected]/internal/tfplugin5/tfplugin5.pb.go:3189 +0x214
google.golang.org/grpc.(*Server).processUnaryRPC(0xc000148000, 0x1bfb878, 0xc000113080, 0xc0005a6400, 0xc00007c6f0, 0x20c64e0, 0x0, 0x0, 0x0)
	google.golang.org/[email protected]/server.go:995 +0x482
google.golang.org/grpc.(*Server).handleStream(0xc000148000, 0x1bfb878, 0xc000113080, 0xc0005a6400, 0x0)
	google.golang.org/[email protected]/server.go:1275 +0xd2c
google.golang.org/grpc.(*Server).serveStreams.func1.1(0xc00044ef20, 0xc000148000, 0x1bfb878, 0xc000113080, 0xc0005a6400)
	google.golang.org/[email protected]/server.go:710 +0xab
created by google.golang.org/grpc.(*Server).serveStreams.func1
	google.golang.org/[email protected]/server.go:708 +0xa5

Error: The terraform-provider-site24x7_v1.0.24 plugin crashed!

This is always indicative of a bug within the plugin. It would be immensely
helpful if you could report the crash with the plugin's maintainers so that it
can be fixed. The output above should help diagnose the issue.

1.0.55 - panic: interface conversion: interface {} is map[string]interface {}, not []interface {}

Hello,

Since 1.0.55, unable to plan something with the terraform provider (works once rollback to 1.0.54):

Stack trace from the terraform-provider-site24x7_v1.0.55 plugin:
panic: interface conversion: interface {} is map[string]interface {}, not []interface {}
goroutine 82 [running]:
github.com/site24x7/terraform-provider-site24x7/site24x7.setCommonResourceData(0xc000489420, 0xc00035cbe0)
	github.com/site24x7/terraform-provider-site24x7/site24x7/threshold_profile.go:599 +0x585
github.com/site24x7/terraform-provider-site24x7/site24x7.updateThresholdProfileResourceData(0xc000489420, 0xc00035cbe0)
	github.com/site24x7/terraform-provider-site24x7/site24x7/threshold_profile.go:438 +0x185
github.com/site24x7/terraform-provider-site24x7/site24x7.thresholdProfileRead(0xc000489420, 0xeaada0, 0xc0004f98e0, 0xc000489420, 0x0)
	github.com/site24x7/terraform-provider-site24x7/site24x7/threshold_profile.go:357 +0x105
github.com/hashicorp/terraform-plugin-sdk/helper/schema.(*Resource).RefreshWithoutUpgrade(0xc000127980, 0xc0001a7310, 0xeaada0, 0xc0004f98e0, 0xc0003c23b0, 0x0, 0x0)
	github.com/hashicorp/[email protected]/helper/schema/resource.go:455 +0x12e
github.com/hashicorp/terraform-plugin-sdk/internal/helper/plugin.(*GRPCProviderServer).ReadResource(0xc00011a500, 0x1029130, 0xc000723200, 0xc0007260f0, 0xc00011a500, 0xc000743a50, 0x46ca67)
	github.com/hashicorp/[email protected]/internal/helper/plugin/grpc_provider.go:525 +0x3dd
github.com/hashicorp/terraform-plugin-sdk/internal/tfplugin5._Provider_ReadResource_Handler(0xe8bbe0, 0xc00011a500, 0x1029130, 0xc000723200, 0xc0001887e0, 0x0, 0x1029130, 0xc000723200, 0xc000756000, 0x2e4)
	github.com/hashicorp/[email protected]/internal/tfplugin5/tfplugin5.pb.go:3153 +0x214
google.golang.org/grpc.(*Server).processUnaryRPC(0xc000470160, 0x10313f8, 0xc000102f00, 0xc0002b0100, 0xc00021aa80, 0x1506390, 0x0, 0x0, 0x0)
	google.golang.org/[email protected]/server.go:995 +0x482
google.golang.org/grpc.(*Server).handleStream(0xc000470160, 0x10313f8, 0xc000102f00, 0xc0002b0100, 0x0)
	google.golang.org/[email protected]/server.go:1275 +0xd2c
google.golang.org/grpc.(*Server).serveStreams.func1.1(0xc000042250, 0xc000470160, 0x10313f8, 0xc000102f00, 0xc0002b0100)
	google.golang.org/[email protected]/server.go:710 +0xab
created by google.golang.org/grpc.(*Server).serveStreams.func1
	google.golang.org/[email protected]/server.go:708 +0xa5
Error: The terraform-provider-site24x7_v1.0.55 plugin crashed!
This is always indicative of a bug within the plugin. It would be immensely
helpful if you could report the crash with the plugin's maintainers so that it
can be fixed. The output above should help diagnose the issue.
resource "site24x7_threshold_profile" "XXXX" {
│ 
│ The plugin encountered an error, and failed to respond to the
│ plugin.(*GRPCProvider).ReadResource call. The plugin logs may contain more
│ details

Best regards,

Token generation

Dear All,

I am not able to generate oauth token with site24x7 to be able to connect via Terraform, can you please provide any advise ?

Thank you in advance

Intermittent error: "oauth2: server response missing access_token"

I'm building up a repository for monitoring across all of our clients. I'm using terragrunt with a very modular structure for flexible configuration.

As the config has grown, I'm starting to see an error:

Error: GET https://www.site24x7.eu/api/monitor_groups/2_redacted_3: giving up after 5 attempts due to: Get "https://www.site24x7.eu/api/monitor_groups/2_redacted_3": oauth2: server response missing access_token

I see from the API docs that there is a limit of 20 active access tokens per refresh token, so I initially thought this was a concurrency issue but this issue does seem to be intermittent and I've just run a plan which completed against 20 modules at once.

Terragrunt provides a --terragrunt-parallelism option which I've tried setting to 1 but I'm still seeing the error.

I see that this error has been mentioned in #86, #87 and #61 too but I've got a working configuration - it just seems to be struggling as my config grows, but the error message doesn't seem to indicate a quota problem?

Outer region consent not set in Location profile

While updating the location profile through terraform the resource keeps updating the outer region consent as below

~ resource "site24x7_location_profile" "location_profile" {
            id                                  = "23232320002323"

          ~ outer_regions_location_consent      = false -> true
            # (4 unchanged attributes hidden)
        }

Looking at the api call it seems the outer_region_location_consent is not stored in the api backend and with every call it's being updated to the default value.

Wrong data type (maybe on purpose?) for check_frequency, returns null with terraform import

Is there any reason why this is int and then a conversion is done later from int -> string as required by the Site24x7 API for this attribute?

Atm, if you try importing an monitor, and specify only id, it will pull the data for the other attributes but for this specific one will return null

I'm wondering if i'm missing something if there is a explicit need to use int then convert it to string?

Support for subgroups

I see there is support for subgroups CRUD in the API docs but not the terraform provider. Is this on the road map?

Thanks!

site24x7_website_monitor website field - Invalid data provided

Faced with bug when we provide invalid "website" field, Terraform returns Error -> not update terraform state, but Monitor was created in site24x7 (not expected behaviour)

example

we made a typo setting website = "https://****/{data.aws_ssm_parameter.aws_ssm_****.value}/****"
mistake that we skip $ ${data.aws_ssm_parameter.aws_ssm_****.value} to render correct URL

Terraform plan

  + resource "site24x7_website_monitor" "...." {
      ....
      + website                     = "https://****/{data.aws_ssm_parameter.aws_ssm_****.value}/****"
    }

Terraform apply return error

╷
│ Error: Invalid data provided.
│ 
│   with module.***,
│   on *** in resource "site24x7_website_monitor" "***":
│ 
╵

attached screen of created monitor in site24x7
Site24x7-issue-1

Unable to change location profile

Hello,

It seems like once created, changing the value location_profile_name does not change the location profile.

  # site24x7_website_monitor.some_monitor["some_site"] will be updated in-place
  ~ resource "site24x7_website_monitor" "some_monitor" {
        id                          = "299771000019XXXXXX"
      + location_profile_name       = "Global NA/EU/AP/SA"
        # (31 unchanged attributes hidden)
    }

It's showing changes, but when I look in the UI nothing has changed.

Thanks !

Having issues with Access Token

Hello,

I'm using this provider for the first time. I've setup with success the oauth on the site24x7 console. The following is my configuration on the terraform side:

terraform {
    required_providers {
        site24x7 = {
            source = "site24x7/site24x7"
            version = "1.0.17"
        }
    }
}

provider "site24x7" {
    data_center = "EU"
    retry_min_wait = 1
    retry_max_wait = 30
}


resource "site24x7_amazon_monitor" "aws_monitor_site24x7" {
  // (Required) Display name for the monitor
  display_name = "Test"
  // (Required) AWS access key
  aws_access_key = var.AWS_ACCESS_KEY_ID
  // (Required) AWS secret key
  aws_secret_key = var.AWS_SECRET_ACCESS_KEY
  // (Optional) AWS discover frequency
  aws_discovery_frequency = 5
  // (Optional) AWS services to discover. See https://www.site24x7.com/help/api/#aws_discover_services
  // for knowing service ID.
  aws_discover_services = ["3"]
}

I've set up the environment variables SITE24X7_OAUTH2_CLIENT_ID, SITE24X7_OAUTH2_CLIENT_SECRET and SITE24X7_OAUTH2_REFRESH_TOKEN. Although I'm having the following error on the terraform apply:
Error: POST https://www.site24x7.eu/api/monitors: giving up after 5 attempts due to: Post "https://www.site24x7.eu/api/monitors": oauth2: server response missing access_token.

I would like to ask help.

Thanks in advance,
TIago

Feature request: add ability to add third_party_services to monitors resources

Support "REST API Transaction"

There is no resource that currently supports "REST API Transaction" monitors. The biggest thing that is needed here are the "transaction steps".

You currently have a "REST API" but not the transaction form.

site24x7_tag - doesn't support import

tried import existed tag by id and Terraform return

Error: resource site24x7_tag doesn't support import

it's important feature as you can not create the same tag : by terraform but with other ID, it makes migration to terraform harder

resource site24x7_threshold_profile issues

site24x7 provider version: 1.0.34

Issue1: down_location_threshold = 0 is not supported (0 is supposed to denote "All Locations" as per https://www.site24x7.com/help/api/#constants

Encountering the following error:
Error: Parameter missing. │ │ with site24x7_threshold_profile.website_threshold_profile_blaze, │ on threshold_profiles.tf line 2, in resource "site24x7_threshold_profile" "website_threshold_profile": │ 2: resource "site24x7_threshold_profile" "website_threshold_profile" { │ ╵ ERRO[0016] 1 error occurred: * exit status 1

Issue2: website_content_modified is always flagged as need to be updated from false to true even if it is already set as true

~ resource "site24x7_threshold_profile" "website_threshold_profile" { id = "248129000055477114" ~ website_content_modified = false -> true

Incorrect and misleading documentation or bug in defining the provider

Hi team,
I tried to configure the terraform provider as following the documentation (https://registry.terraform.io/providers/site24x7/site24x7/latest/docs). In my case I used only Client ID, Client Secret (required) and Refresh Token (as there is mentioned that it's required to use at least one of Oauth Access or Refresh Token.
With that configuration the provider didn't work - the error I received on terraform apply (only) was:

Error: POST /[resource]: giving up after 5 attempts due to: Post "/[resource]": oauth2: server response missing access_token.

The next try was as adding some dummy string as access token, the result was even more weird:

Error: POST /[resource]: giving up after 5 attempts due to: Post "/[resource]": unsupported protocol scheme ""

How the work got fixed: I simply added and defined the data_center attribute to the provider, which was pointed as "Optional" as well and the configuration got work.
Summary:
Probably the documentation is inconsistent with the actual functionality or there is some bug/unexpected behaviour of the provider, but the minimal set which was working for me was:

  • Client ID
  • Client Secret
  • Oauth Refresh Token
  • Data Center

Cheers,
Georgi

site24x7_monitor_group - health_threshold_count - unable to set it to 1

Hello,

When we use site24x7_monitor_group.health_threshold_count, we cannot set it to 1 to be able to receive alert group only when all resources are down.

Indeed, when we try to set it to 1, terraform always overwrite it to 0.

It seems to works only for subgroup & not parent group.

Best regards,

Crash modifying monitor_group

I've got a site24x7_monitor_group which creates fine but a subsequent apply causes this crash:

site24x7_monitor_group.this: Modifying... [id=26877000000106001]
╷
│ Error: Plugin did not respond
│
│   with site24x7_monitor_group.this,
│   on main.tf line 1, in resource "site24x7_monitor_group" "this":
│    1: resource "site24x7_monitor_group" "this" {
│
│ The plugin encountered an error, and failed to respond to the
│ plugin.(*GRPCProvider).ApplyResourceChange call. The plugin logs may
│ contain more details.
╵

Stack trace from the terraform-provider-site24x7_v1.0.16 plugin:

panic: interface conversion: interface {} is *schema.Set, not []interface {}

goroutine 66 [running]:
github.com/site24x7/terraform-provider-site24x7/site24x7.resourceDataToMonitorGroupUpdate(0x1400017cbd0, 0x14000892400, 0x11)
	github.com/site24x7/terraform-provider-site24x7/site24x7/monitor_group.go:208 +0x7a4
github.com/site24x7/terraform-provider-site24x7/site24x7.monitorGroupUpdate(0x1400017cbd0, 0x102ea7c40, 0x14000636e30, 0x24, 0x1033f6760)
	github.com/site24x7/terraform-provider-site24x7/site24x7/monitor_group.go:101 +0xcc
github.com/hashicorp/terraform-plugin-sdk/helper/schema.(*Resource).Apply(0x14000299080, 0x1400013c500, 0x14000297ee0, 0x102ea7c40, 0x14000636e30, 0x102dca801, 0x1400012f908, 0x1400013bc50)
	github.com/hashicorp/[email protected]/helper/schema/resource.go:311 +0x1d4
github.com/hashicorp/terraform-plugin-sdk/helper/schema.(*Provider).Apply(0x14000299800, 0x1400012f8d0, 0x1400013c500, 0x14000297ee0, 0x1400020e3e8, 0x140001a63a0, 0x102dcc4e0)
	github.com/hashicorp/[email protected]/helper/schema/provider.go:294 +0x88
github.com/hashicorp/terraform-plugin-sdk/internal/helper/plugin.(*GRPCProviderServer).ApplyResourceChange(0x140002904e8, 0x102efa6b0, 0x1400013ae10, 0x14000388300, 0x140002904e8, 0x10280c618, 0x102e62a40)
	github.com/hashicorp/[email protected]/internal/helper/plugin/grpc_provider.go:885 +0x6b0
github.com/hashicorp/terraform-plugin-sdk/internal/tfplugin5._Provider_ApplyResourceChange_Handler(0x102e9e760, 0x140002904e8, 0x102efa6b0, 0x1400013ae10, 0x140003882a0, 0x0, 0x102efa6b0, 0x1400013ae10, 0x14000178240, 0x220)
	github.com/hashicorp/[email protected]/internal/tfplugin5/tfplugin5.pb.go:3189 +0x1c8
google.golang.org/grpc.(*Server).processUnaryRPC(0x14000406000, 0x102f02cd8, 0x14000103800, 0x14000144100, 0x140007143c0, 0x1033b8260, 0x0, 0x0, 0x0)
	google.golang.org/[email protected]/server.go:995 +0x380
google.golang.org/grpc.(*Server).handleStream(0x14000406000, 0x102f02cd8, 0x14000103800, 0x14000144100, 0x0)
	google.golang.org/[email protected]/server.go:1275 +0xab0
google.golang.org/grpc.(*Server).serveStreams.func1.1(0x140005866f0, 0x14000406000, 0x102f02cd8, 0x14000103800, 0x14000144100)
	google.golang.org/[email protected]/server.go:710 +0x94
created by google.golang.org/grpc.(*Server).serveStreams.func1
	google.golang.org/[email protected]/server.go:708 +0x8c

Error: The terraform-provider-site24x7_v1.0.16 plugin crashed!

This is always indicative of a bug within the plugin. It would be immensely
helpful if you could report the crash with the plugin's maintainers so that it
can be fixed. The output above should help diagnose the issue.

I'm using these versions:

  • terraform: 1.0.11
  • terragrunt: 0.38.1
  • site24x7 provider: 1.0.16

The module is extremely simple:

resource "site24x7_monitor_group" "this" {
  display_name = var.display_name
  description     = var.description

  health_threshold_count = var.health_threshold_count
}

Incidentally, I'm also setting health_threshold_count to 0 but the subsequent plan looks like this:

Terraform used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
  ~ update in-place

Terraform will perform the following actions:

  # site24x7_monitor_group.this will be updated in-place
  ~ resource "site24x7_monitor_group" "this" {
      ~ health_threshold_count = 1 -> 0
        id                     = "26877000000106001"
        # (4 unchanged attributes hidden)
    }

Plan: 0 to add, 1 to change, 0 to destroy.

notification_delay_configuration.0.status - Unable to use -1

Hello,

Following the doc (https://registry.terraform.io/providers/site24x7/site24x7/latest/docs/resources/notification_profile), the status of notification_delay_configuration can be -1, 0, 1, 2 or 3.

If I try:
notification_delay_configuration { status = -1 business_hours_id = "-1" notification_delay = 2 outside_business_hours = "1" }

I have this error (with and without ""):

│ Error: expected notification_delay_configuration.0.status to be one of [0 2 3], got -1

FYI, I use the last version of site24x7 terraform provider.

monitors - when use tag_ids - unexpected diff

when you use tag_ids except tag names, you can face with issue that next terraform plan/apply provider shows the diff (actually the same IDs but in different order)

example all type of monitors

~ resource "site24x7_rest_api_monitor" "xxxx" {
        id                        = "XXX"
      ~ tag_ids                   = [
          + "555057000018570008",
          + "555057000018310610",
            "555057000018309510",
            "555057000018310608",
          - "555057000018310610",
          - "555057000018570008",
        ]
        # (32 unchanged attributes hidden)
    }
    
    
    ~ resource "site24x7_website_monitor" "XXX" {
        id                          = "XXX"
      ~ tag_ids                     = [
          - "555057000018309510",
            "555057000018309517",
          - "555057000018310608",
            "555057000018570008",
          + "555057000018309510",
          + "555057000018310608",
        ]
        # (30 unchanged attributes hidden)
    }

maybe sort IDs sort.Strings(xxx) is skipped ?

Heartbeat, Monitoring Groups

Hi, some time ago (#132) you implemented the Heartbeat monitors.
After different tests we realizised a strange issue.

Threshold-profile type for HEARTBEAT Monitoring is missing. Correct?
There is a little issue with monitor_groups. I got this strange message when I re-run a pipeline without code changes.

      ~ monitor_groups          = [
          - "132963000030920001",
            "132963000030907001",
          + "132963000030920001",
        ]

Website monitor not exists option ignore_cert_err

Hello,

I find the option ignore_cert_err exists when we create a website monitor by using Site24x7 API but it does not exist in Terraform parameter. Could you advise if this option is available in the future?

unable to use maintenance_type

is this section of code supposed to be uncommented?

// As of now maintenance_type "3" is supported
// "maintenance_type": {
// Type: schema.TypeInt,
// Optional: true,
// Default: 3,
// ValidateFunc: validation.IntInSlice([]int{3}),
// Description: "Configuration for Once/Daily/Weekly/Monthly only maintenance. Default is 3 - Once. Refer https://www.site24x7.com/help/api/#schedule_maintenance_constants",
// },

I tried to set maintenance_type in resource "site24x7_schedule_maintenance" but it's not recognized:

╷
│ Error: Unsupported argument
│
│   on main.tf line 29, in resource "site24x7_schedule_maintenance" "schedule_maintenance_basic":
│   29:   maintenance_type = 3
│
│ An argument named "maintenance_type" is not expected here.
╵

Feature request: Allow to suspend a web monitor

Hello,

Any plans to add allow to suspend a probe via terraform?

At this time, we can use https://registry.terraform.io/providers/site24x7/site24x7/latest/docs/resources/website_monitor to create a website monitor via terraform. The issue is that we cannot disable it via terraform but only delete it (in this case, we lost all the history of SLA).

The idea is to be able to suspend/reactive a website monitor probe via terraform itself (to be able to keep SLA for few times when a site is decommissioned by example)

https://www.site24x7.com/help/api/#suspend-monitor

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.