dosubot[bot] commented on issue #8259:
URL:
https://github.com/apache/incubator-devlake/issues/8259#issuecomment-2577307743
<!-- Greeting -->
Hello @antarasevich! I'm here to help you with any bugs, questions, or
contributions you have in mind. Let's tackle this issue together!
<!-- Answer -->
To address the issue of the Opsgenie plugin only listing the first 20
services, you need to modify the API request parameters from `page` and
`per_page` to `offset` and `limit`, as these are the correct parameters for the
Opsgenie API.
Here's a general approach to fix this:
1. **Update the API Request Parameters**: Change the parameters in the
`listOpsgenieRemoteScopes` function to use `offset` and `limit` instead of
`page` and `per_page`.
2. **Adjust the Pagination Logic**: Implement logic to calculate the
`offset` based on the current page and the number of services you want to
retrieve per request (`limit`).
Here's a conceptual example of how you might adjust the code:
```go
if page.Page == 0 {
page.Page = 1
}
if page.PerPage == 0 {
page.PerPage = 100
}
offset := (page.Page - 1) * page.PerPage
query := url.Values{
"offset": []string{fmt.Sprintf("%v", offset)},
"limit": []string{fmt.Sprintf("%v", page.PerPage)},
}
res, err := apiClient.Get("v1/services", query, nil)
```
3. **Test the Changes**: After making these changes, test the plugin to
ensure it correctly lists all services by iterating through the pages using the
`offset` and `limit` parameters.
By implementing these changes, the Opsgenie plugin should be able to list
all available services for your user, rather than just the first 20.
<!-- Dosu Comment Footer -->
*To continue talking to [Dosu](https://dosu.dev), mention @dosu.*
---
<sup>Help Dosu learn! Give it feedback: [Great
Response](https://app.dosu.dev/response-feedback/a5a84e0a-a90f-4863-ae64-1779fb117d57?feedback_type=great_response)
| [Irrelevant
Answer](https://app.dosu.dev/response-feedback/a5a84e0a-a90f-4863-ae64-1779fb117d57?feedback_type=irrelevant_answer)
| [Incorrect
Sources](https://app.dosu.dev/response-feedback/a5a84e0a-a90f-4863-ae64-1779fb117d57?feedback_type=incorrect_sources)
| [Too
Verbose](https://app.dosu.dev/response-feedback/a5a84e0a-a90f-4863-ae64-1779fb117d57?feedback_type=too_verbose)
|
[Hallucination](https://app.dosu.dev/response-feedback/a5a84e0a-a90f-4863-ae64-1779fb117d57?feedback_type=hallucination)
|
[Other](https://app.dosu.dev/response-feedback/a5a84e0a-a90f-4863-ae64-1779fb117d57?feedback_type=other)</sup>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]