crossplane-contrib / provider-alibaba

Crossplane provider for Alibaba Cloud
Apache License 2.0
50 stars 18 forks source link

Fix the short reconciling interval problem when hitting a create issue #66

Closed zzxwill closed 3 years ago

zzxwill commented 3 years ago

What problem are you facing?

When hitting an issue of creating an external resource, the reconciler interval is so short.

}
  Warning  CannotCreateExternalResource  4m49s  managed/project.sls.alibaba.crossplane.io  FailedToCreateSLSProject: {
    "httpCode": 400,
    "errorCode": "ProjectAlreadyExist",
    "errorMessage": "Project sls-project-test already exist",
    "requestID": "606B2B449A3FCDEBF04A39AB"
}
  Warning  CannotCreateExternalResource  4m49s  managed/project.sls.alibaba.crossplane.io  FailedToCreateSLSProject: {
    "httpCode": 400,
    "errorCode": "ProjectAlreadyExist",
    "errorMessage": "Project sls-project-test already exist",
    "requestID": "606B2B44C65D859813230B62"
}
  Warning  CannotCreateExternalResource  4m48s  managed/project.sls.alibaba.crossplane.io  FailedToCreateSLSProject: {
    "httpCode": 400,
    "errorCode": "ProjectAlreadyExist",
    "errorMessage": "Project sls-project-test already exist",
    "requestID": "606B2B456B5BF43B1BE88971"
}
  Warning  CannotCreateExternalResource  4m42s (x16 over 4m48s)  managed/project.sls.alibaba.crossplane.io  (combined from similar events): FailedToCreateSLSProject: {
    "httpCode": 400,
    "errorCode": "ProjectAlreadyExist",
    "errorMessage": "Project sls-project-test already exist",
    "requestID": "606B2B4B191163A6A2BA0214"
}

How could Crossplane help solve your problem?

Delete the requestID field from the error message.

muvaf commented 3 years ago

This should be solved after integrating a rate limiter from crossplane-runtime introduced in https://github.com/crossplane/crossplane-runtime/pull/243

zzxwill commented 3 years ago

@muvaf That's cool. I planed to implement it by remove requestID from the error. That would be more reasonable to solve in runtime level as requestID is an important field for issue debugging and keep high fidelity to cloud resource OpenAPI.

muvaf commented 3 years ago

That'd be an additional step to take, which is something we're doing in provider-aws.

zzxwill commented 3 years ago

@muvaf Great. I will upgrade this provider once the new release of runtime comes out. Closed it. Thanks.