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

Extend groundskeeper to track infrastructure agents #9

Open
xrismck opened this issue Dec 19, 2019 · 4 comments
Open

Extend groundskeeper to track infrastructure agents #9

xrismck opened this issue Dec 19, 2019 · 4 comments
Labels
enhancement New feature or request

Comments

@xrismck
Copy link

xrismck commented Dec 19, 2019

Summary

I think this request is pretty straight forward - track infrastructure agents in addition to APM agents.

Desired Behaviour

Create ability to track existing infra agent versions and compare to latest version and release date. Create toggle for APM vs Infra. Keep the SLO comparison feature in place. Filtering based on tags will not be implemented in the first version.

Possible Solution

Compare existing agent versions to latest release version and release date.

Additional context

In the future, filters may be added.

Question

What is the source of truth (URL endpoint) for getting latest infra agent version details (e.g. version number and release date) ?

@xrismck xrismck added the enhancement New feature or request label Dec 19, 2019
@ryanv94
Copy link

ryanv94 commented Dec 20, 2019

@xrismck - I'm not a coder, so I'm not 100% on the best implementation method - but I can say that GraphQL can give you information on all agent versions, including Infrastructure; The following graphql query works here: https://api.newrelic.com/graphiql

{
  docs {
    agentReleases(agentName: INFRASTRUCTURE) {
      date
      version
    }
  }
}

@fightingmonk
Copy link
Contributor

fightingmonk commented Dec 26, 2019

Thanks for opening this feature request @xrismck. I did a bit of digging based on @ryanv94's note and found that we can get the current Infrastructure agent version from the tags applied to host entities.

I'd love to hear your thoughts on how you'd like to use use this info so we can sketch up the UX. What problem are you trying to solve and who is involved in working through the solution?

Here's a query that returns both the agent release dates and actively reporting hosts with tags (which includes agentVersion):

{
  docs {
    agentReleases(agentName: INFRASTRUCTURE) {
      date
      version
    }
  }
  actor {
    entitySearch(queryBuilder: {reporting: true, domain: INFRA, type: HOST}) {
      results {
        entities {
          ... on InfrastructureHostEntityOutline {
            guid
            name
            tags {
              key
              values
            }
            account {
              id
              name
            }
            reporting
            permalink
          }
        }
      }
    }
  }
}

@xrismck
Copy link
Author

xrismck commented Dec 31, 2019

@fightingmonk

What I've had in mind is to provide a solution that pretty much replicates what the current groundskeeper nerdpack does, but do it for NR Infrastructure agents.

For starters, my thought is to keep the UI in alignment, where applicable, with the functionality currently provided by the existing nerdpack.

Here are some of UI design ideas:

  1. Add a radio button selector group for: APM vs Infrastructure Agent. Offer this to the left of the Upgrade SLO selection group. The thought being that Infra vs APM is higher precedence categorical choice than age of agent.
  2. Keep the Upgrade SLO selector group as is.
  3. Modify the filter selection as a multi-choice dropdown versus single choice. Offer filters that coincide with the categorical fields available in the Insights ComputeSample data set, like: Environment and Provider. Initially keep this list basic as the categorical fields will differ based on Provider type. Later on, consider the offering of a richer filter selections. For example, filters based on the SystemSample data set so one could filter based on APM Application Names if desired; however, I'm not sure how useful that would be - just a thought.
  4. Keep the display of agent versions, but display Infra agent versions versus APM. And, display a list of Infra agent versions based on the selection in the Upgrade SLO selector group. The 'Released On' field will give users a sense of how out-of-date their agents are.

@tangollama tangollama added the good first issue Good for newcomers label Apr 17, 2020
@fightingmonk fightingmonk removed the good first issue Good for newcomers label Dec 5, 2020
@rossfromwork
Copy link

Just giving this a bump to see if it can be prioritised. Groundskeeper V2 is a great way for everyone to manage their APM agents, but the Infra piece is a gap. Seems like a somewhat easy win to add Infra support (given there is no need to compare runtime logic). Appreciate all the hard work that went into V1 and V2 of GK, hoping for a V3 that supports Infra. Thanks all!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants