Skip to content

Update osquery-perf to improve ability to load test CA profiles #36712

Description

@JordanMontgomery

Goal

User story
As a fleet contributor,
I want to be able to test certificate profiles, including the SCEP exchange, with osquery-perf
so that I can confidently make and test changes to profile sending code

Roadmap item

Original requests

Resources

Changes

Product

  • UI changes: No changes
  • CLI (fleetctl) usage changes: No changes
  • YAML changes: No changes
  • REST API changes: No changes
  • Fleet's agent (fleetd) changes: No changes
  • GitOps mode UI changes: No changes
  • GitOps generation changes: No changes
  • Activity changes: No changes
  • Permissions changes: No changes
  • Changes to paid features or tiers: No changes
  • My device and fleetdm.com/better changes: No changes
  • Usage statistics: No changes
  • Other reference documentation changes: No changes
  • First draft of test plan added
  • Once shipped, requester has been notified
  • Once shipped, dogfooding issue has been filed

Engineering

  • Test plan is finalized
  • Contributor API changes: No changes
  • Feature guide changes: No changes
  • Database schema migrations: No changes
  • Load testing: Run a simple load test with 1000 simulated macOS, iOS and iPadOS devices, make sure it functions in a load testing setup using an external CA(recommend something like Smallstep SCEP but any is fine). The goal is not testing the load profile but osquery-perf itself
  • Load testing/osquery-perf improvements: See comment below - this is solely an osquery-perf change
  • This is a premium only feature: Yes because CAs are premium but this will have no changes that need Premium-gating

ℹ️  Please read this issue carefully and understand it. Pay special attention to UI wireframes, especially "dev notes".

QA

Risk assessment

  • Requires testing in a hosted environment: Yes, make sure it works in a load test environment
  • Requires load testing: Yes
  • Risk level: Low

Test plan

Make sure to go through the list and consider all events that might be related to this story, so we catch edge cases earlier.

  1. Run the load test as described above. This is purely an osquery-perf change, no product testing needed

Testing notes

Confirmation

  1. Engineer: Added comment to user story confirming successful completion of test plan.
  2. QA: Added comment to user story confirming successful completion of test plan.

Metadata

Metadata

Assignees

No one assigned

    Labels

    #g-apple-at-workProduct group focused on Apple devices:productProduct Design department (shows up on 🦢 Drafting board)storyA user story defining an entire feature~engineering-initiatedEngineering-initiated story, such as a bug, refactor, or contributor experience improvement.~performance-scaling

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    Status
    🥚 In drafting
    Status
    No status
    Status
    🪿 Fast draft

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions