Skip to content
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

Implement Workload API changes in workloads.go: ETA TBD #693

Open
jpvajda opened this issue Feb 26, 2021 · 0 comments
Open

Implement Workload API changes in workloads.go: ETA TBD #693

jpvajda opened this issue Feb 26, 2021 · 0 comments

Comments

@jpvajda
Copy link

jpvajda commented Feb 26, 2021

Feature Description

Based on the feedback received by our customers, the Workloads team is working on extending the API which will result in a change that will have an impact on the newrelic-client-go repository.

As of today, customers link dashboards to a workload as any other entity; this is by the workload definition through the entities and the entitySearchQueries fields in the workload model → newrelic/newrelic-client-go/blob/master/pkg/workloads/workload.go

However, this experience in the API has some drawbacks. For instance, it is misleading that the customer can link dashboards to the workload by the workload definition despite the fact that dashboards are not alertable and that they will never be displayed in the HDV or the entities map in the Workloads UI. Additionally, the current experience in the API doesn’t give customers the ability to define custom NRQL filters for their linked dashboards, so the entities that they visualize when opening a dashboard from the Workloads UI are narrowed down to the workloads scope. In fact, this was the main driver of these changes.

The changes in the Workloads API is a commitment that the team has for this month (i.e. March), and that will allow customers consuming the API directly from NerdGraph to start leveraging the new API (i.e. link dashboards to their workloads using the new path and also have the ability to define filters for those dashboards). We reckon that a considerable amount of our customers do not access NerdGraph directly but instead they use the GoClient. Which means that as long as the GoClient is not updated, two things will happen:

  1. Customers using the GoClient to operate with workloads won't be able to define filters at all for the dashboards linked to a workload.
  2. Customers will be forced to continue linking dashboards to a workload through the "workload definition", as they do as of today; which for us translates into having a job running in the background that migrates those dashboards linked in the old way to the new model. As long as the GoClient is not updated, that job will have to live.

AC

  1. The response can returned by all the mutations and queries (i.e. your Workload struct), is extended by adding two new fields: the linkedIndividualDashboards and the linkedDynamicDashboards.
  2. Consider if any Terraform changes are required to support in our workloads resource

specifications

  • See the internal document defined by Albert Lostes
@jpvajda jpvajda added dependencies Changes to dependencies enhancement New feature or request and removed dependencies Changes to dependencies labels Feb 26, 2021
@jpvajda jpvajda added this to Feature Backlog in NR1 Developer Toolkit Community via automation Feb 26, 2021
@jpvajda jpvajda moved this from Feature Backlog to To do in NR1 Developer Toolkit Community Feb 26, 2021
@jpvajda jpvajda changed the title Implement Workload API changes in workloads.go Implement Workload API changes in workloads.go: ETA TBD Feb 26, 2021
@jpvajda jpvajda self-assigned this Feb 26, 2021
@jpvajda jpvajda removed their assignment May 24, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
client-go enhancement New feature or request
Projects
No open projects
Development

No branches or pull requests

1 participant