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

Upcoming Release Changes #3407

Merged
merged 1 commit into from
Aug 14, 2024
Merged

Upcoming Release Changes #3407

merged 1 commit into from
Aug 14, 2024

Conversation

theguild-bot
Copy link
Collaborator

@theguild-bot theguild-bot commented Aug 13, 2024

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@graphql-yoga/[email protected]

Major Changes

  • #3391
    0788d8a
    Thanks @EmrysMyrddin! - Breaking Change: Rename all metrics
    options to their actual metric name to avoid confusion.

    All metric options have been moved under a mandatory metrics key, and the name of each options
    have been renamed to match the default metric name.

    The plugin option argument is also now mandatory.

    export const serveConfig = defineConfig({
      plugins: pluginCtx => [
        usePrometheus({
          ...pluginCtx,
    
          // Enable all available metrics
    -     http: true
    -     requestSummary: true,
    -     parse: true,
    -     validate: true,
    -     contextBuilding: true,
    -     execute: true,
    -     subscribe: true,
    -     errors: true,
    -     deprecatedFields: true,
    -     requestTotalDuration: true,
    -     schemaChangeCount: true,
    
          // Warning: enabling resolvers level metrics will introduce significant overhead
    -     resolvers: true,
    +     metrics: {
    +       graphql_yoga_http_duration: true,
    +       graphql_envelop_request_time_summary: true,
    +       graphql_envelop_phase_parse: true,
    +       graphql_envelop_phase_validate: true,
    +       graphql_envelop_phase_context: true,
    +       graphql_envelop_phase_execute: true,
    +       graphql_envelop_phase_subscribe: true,
    +       graphql_envelop_error_result: true,
    +       graphql_envelop_deprecated_field: true,
    +       graphql_envelop_request_duration: true,
    +       graphql_envelop_schema_change: true,
    
            // Warning: enabling resolvers level metrics will introduce significant overhead
    +       graphql_envelop_execute_resolver: true,
    +     }
        })
      ]
    })
  • #3408
    88393b3
    Thanks @dotansimha! - By default, the following metrics are now
    enabled:

    • graphql_envelop_deprecated_field
    • graphql_envelop_request
    • graphql_envelop_request_duration
    • graphql_envelop_request_time_summary
    • graphql_envelop_phase_parse
    • graphql_envelop_phase_validate
    • graphql_envelop_phase_context
    • graphql_envelop_error_result
    • graphql_envelop_phase_execute
    • graphql_envelop_phase_subscribe
    • graphql_envelop_schema_change
    • graphql_yoga_http_duration

Minor Changes

  • #3391
    0788d8a
    Thanks @EmrysMyrddin! - Add missing labels path and phase
    of graphql_envelop_error_result metric to the configuration.

    Add missing labels method and statusCode of graphql_yoga_http_duration metric to the
    configuration.

Patch Changes

Copy link
Contributor

github-actions bot commented Aug 13, 2024

💻 Website Preview

The latest changes are available as preview in: https://cc367937.graphql-yoga.pages.dev

Copy link
Contributor

github-actions bot commented Aug 13, 2024

✅ Benchmark Results

     ✓ no_errors{mode:graphql}
     ✓ expected_result{mode:graphql}
     ✓ no_errors{mode:graphql-jit}
     ✓ expected_result{mode:graphql-jit}
     ✓ no_errors{mode:graphql-response-cache}
     ✓ expected_result{mode:graphql-response-cache}
     ✓ no_errors{mode:graphql-no-parse-validate-cache}
     ✓ expected_result{mode:graphql-no-parse-validate-cache}

     checks.......................................: 100.00% ✓ 424808      ✗ 0     
     data_received................................: 1.7 GB  14 MB/s
     data_sent....................................: 86 MB   715 kB/s
     http_req_blocked.............................: avg=1.42µs   min=972ns    med=1.27µs   max=3.16ms   p(90)=1.81µs   p(95)=2.02µs  
     http_req_connecting..........................: avg=2ns      min=0s       med=0s       max=164.89µs p(90)=0s       p(95)=0s      
     http_req_duration............................: avg=356.67µs min=214.68µs med=319.36µs max=18.79ms  p(90)=461.9µs  p(95)=481.69µs
       { expected_response:true }.................: avg=356.67µs min=214.68µs med=319.36µs max=18.79ms  p(90)=461.9µs  p(95)=481.69µs
     ✓ { mode:graphql-jit }.......................: avg=283.14µs min=214.68µs med=262.01µs max=18.79ms  p(90)=292.38µs p(95)=305.25µs
     ✓ { mode:graphql-no-parse-validate-cache }...: avg=485.33µs min=406.31µs med=458.66µs max=8.9ms    p(90)=499.74µs p(95)=528.85µs
     ✓ { mode:graphql-response-cache }............: avg=335.21µs min=265.45µs med=316.82µs max=7.09ms   p(90)=348.94µs p(95)=359.41µs
     ✓ { mode:graphql }...........................: avg=359.64µs min=274.17µs med=328.52µs max=13.78ms  p(90)=369.89µs p(95)=404.31µs
     http_req_failed..............................: 0.00%   ✓ 0           ✗ 212404
     http_req_receiving...........................: avg=32.86µs  min=15.52µs  med=32.82µs  max=7.15ms   p(90)=37.93µs  p(95)=40.01µs 
     http_req_sending.............................: avg=7.77µs   min=5.83µs   med=6.96µs   max=385.13µs p(90)=10.4µs   p(95)=11.05µs 
     http_req_tls_handshaking.....................: avg=0s       min=0s       med=0s       max=0s       p(90)=0s       p(95)=0s      
     http_req_waiting.............................: avg=316.03µs min=186.57µs med=279.49µs max=18.7ms   p(90)=421.18µs p(95)=438.57µs
     http_reqs....................................: 212404  1770.004206/s
     iteration_duration...........................: avg=560.24µs min=380.43µs med=518.65µs max=19.21ms  p(90)=669.64µs p(95)=694.73µs
     iterations...................................: 212404  1770.004206/s
     vus..........................................: 1       min=1         max=1   
     vus_max......................................: 2       min=2         max=2   

Copy link
Contributor

github-actions bot commented Aug 13, 2024

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Learn more:

@theguild-bot theguild-bot force-pushed the changeset-release/main branch 2 times, most recently from d1624f8 to bb4bee7 Compare August 14, 2024 10:46
@dotansimha dotansimha merged commit d2e4557 into main Aug 14, 2024
34 checks passed
@dotansimha dotansimha deleted the changeset-release/main branch August 14, 2024 11:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants