-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for multiple project ids/service ids per component #45
Comments
Hi @rocha-bruno! Congratulations on your first issue on our repo and thanks for helping out. Just to double-check, your component in Backstage maps to a group of services in PagerDuty? For example web, api, database services that belong to the same application. Which ultimately belong to a team. Is that it? We are considering building a team component as you already mention (#34) but I was wondering if your use case is slightly different and you mapped all your services as components and not as APIs, resources, ... that ultimately belong to component and a system. If you can share more details I would appreciate. We can take it offline as well if you prefer. |
Hello @t1agob, thank you for your reply. I will try to summarize our complex inventory in one example to make my request clearer, hopefully it helps understand our need. We have a component ABC in backstage, that has for example the type = website. For more context, I work for a bank. On Pagerduty, these different locations are represented by different services. For the website above, we will have for example A_internalenv_ci, A_internalenv_tests, A_externalenv_ourbank, A_externalenv_partnerA. It would be interesting for us to be able to present these X Pagerduty services in the view of the component ABC in Backstage. metadata:
annotations:
pagerduty.com/service-id: PABCHD1, PABCHD2, PABCHD3, PABCHD4 The length of annotations is limited, but still enough to contain a lot of services. The backend logic to get the service ids is quite different from the team aggregation view (that we also need btw :) ), but the frontend could be the same I guess. Tell me if you need more information or you have more questions. |
Got it! Thanks for the detailed explanation. I'll be taking this into consideration. I've been working on a new design for the plugin and having different versions of the plugin that can support this and other more advanced scenarios. From a UI perspective it is not that different from a team card because it is an aggregated view that needs to clearly allow users to identify the relation between information and service, but the backend logic can be optimised for sure. |
@t1agob My team would be interested in the ability to associate a single Backstage entity with multiple PagerDuty services, as well. In our case, we have separate While it's not perfectly analogous, anecdotally, the splunk on-call plugin displays distinct info cards for each of the teams associated with a For whatever it's worth, similar to @rocha-bruno 's suggestion, I was imagining the PagerDuty plugin displaying distinct info cards (or perhaps a single, tabbed info card?) for each of the services associated with a |
@t1agob 👋 Thank you for your contributions to Backstage and this plugin! Chiming in to add support to this request. My organisation are working towards enabling the PagerDuty plugin, but we almost universally use multiple services to segment alert priority, similar to @mdb's case. Separately, it's awesome to see that bilateral syncing of service dependencies has been added, that will be a boon for us! |
Is your feature request related to a problem? Please describe.
Each component we manage in our company is represented by multiple services in Pagerduty, one by environment and cluster/group of machines. The current annotation only work for 1:1 relation between a component and a service_id
Describe the solution you'd like
Be able to add multiple service ids in the pagerduty annotation and adapt the plugin to render an aggregated view of those service ids.
Describe alternatives you've considered
Return the current widget for each service id could be a quick win, but this will lead to potentially a lot of widgets displayed and will be messy for end users. The solution found for a squad view expressed in another issue could be used there as well, based on the multiple values of the annotation instead of the owner relationship ?
The text was updated successfully, but these errors were encountered: