1"use strict";(globalThis.webpackChunknbomber_docs=globalThis.webpackChunknbomber_docs||[]).push([[738],{6146(e,t,a){a.r(t),a.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>m,frontMatter:()=>o,metadata:()=>n,toc:()=>u});const n=JSON.parse('{"id":"nbomber-studio/features/trend-analysis","title":"Trend Analysis","description":"Trend analysis is particularly useful for teams that want to track load test performance over longer periods, such as several months or even a full year. You\'ll see a degradation curve based on load test metrics summarized per day and plotted across the entire period.","source":"@site/docs/nbomber-studio/features/trend-analysis.md","sourceDirName":"nbomber-studio/features","slug":"/nbomber-studio/features/trend-analysis","permalink":"/docs/nbomber-studio/features/trend-analysis","draft":false,"unlisted":false,"editUrl":"https://github.com/PragmaticFlow/NBomber.Docs/blob/dev/docs/nbomber-studio/features/trend-analysis.md","tags":[],"version":"current","sidebarPosition":2,"frontMatter":{"id":"trend-analysis","title":"Trend Analysis","sidebar_position":2},"sidebar":"tutorialSidebar","previous":{"title":"Compare Runs","permalink":"/docs/nbomber-studio/features/compare-runs"},"next":{"title":"Session Management","permalink":"/docs/nbomber-studio/features/session-management"}}');var r=a(4848),l=a(8453),s=a(9487);const o={id:"trend-analysis",title:"Trend Analysis",sidebar_position:2},i=void 0,c={},u=[];function d(e){const t={p:"p",...(0,l.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(t.p,{children:"Trend analysis is particularly useful for teams that want to track load test performance over longer periods, such as several months or even a full year. You'll see a degradation curve based on load test metrics summarized per day and plotted across the entire period."}),"\n",(0,r.jsx)("div",{className:"video-container",children:(0,r.jsx)(s.A,{src:"https://youtu.be/C-0iCClKNbk",controls:!0,loop:!0,style:{width:"80%",height:"auto",aspectRatio:"16/9"}})})]})}function m(e={}){const{wrapper:t}={...(0,l.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(d,{...e})}):d(e)}},8453(e,t,a){a.d(t,{R:()=>s,x:()=>o});var n=a(6540);const r={},l=n.createContext(r);function s(e){const t=n.useContext(l);return n.useMemo(function(){return"function"==typeof e?e(t):{...t,...e}},[t,e])}function o(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:s(e.components),n.createElement(l.Provider,{value:t},e.children)}},9487(e,t,a){a.d(t,{A:()=>I});var n=a(6540);const r=/\.(m4a|m4b|mp4a|mpga|mp2|mp2a|mp3|m2a|m3a|wav|weba|aac|oga|spx)($|\?)/i,l=/\.(mp4|og[gv]|webm|mov|m4v)(#t=[,\d+]+)?($|\?)/i,s=/\.(m3u8)($|\?)/i,o=/\.(mpd)($|\?)/i,i=/stream\.mux\.com\/(?!\w+\.m3u8)(\w+)/,c=/(?:youtu\.be\/|youtube(?:-nocookie|education)?\.com\/(?:embed\/|v\/|watch\/|watch\?v=|watch\?.+&v=|shorts\/|live\/))((\w|-){11})|youtube\.com\/playlist\?list=|youtube\.com\/user\//,u=/vimeo\.com\/(?!progressive_redirect).+/,d=/(?:wistia\.(?:com|net)|wi\.st)\/(?:medias|embed)\/(?:iframe\/)?([^?]+)/,m=/open\.spotify\.com\/(\w+)\/(\w+)/i,y=/(?:www\.|go\.)?twitch\.tv\/([a-zA-Z0-9_]+|(videos?\/|\?video=)\d+)($|\?)/,p=/tiktok\.com\/(?:player\/v1\/|share\/video\/|@[^/]+\/video\/)([0-9]+)/,b=(e,t)=>{if(Array.isArray(e)){for(const a of e){if("string"==typeof a&&b(a,t))return!0;if(b(a.src,t))return!0}return!1}return t(e)},h={html:e=>b(e,e=>r.test(e)||l.test(e)),hls:e=>b(e,e=>s.test(e)),dash:e=>b(e,e=>o.test(e)),mux:e=>i.test(e),youtube:e=>c.test(e),vimeo:e=>u.test(e)&&!l.test(e)&&!s.test(e),wistia:e=>d.test(e),spotify:e=>m.test(e),twitch:e=>y.test(e),tiktok:e=>p.test(e)};var f=n.forwardRef((e,t)=>{const a=r.test(`${e.src}`)?"audio":"video";return n.createElement(a,{...e,ref:t},e.children)});var v=[{key:"hls",name:"hls.js",canPlay:h.hls,canEnablePIP:()=>!0,player:(0,n.lazy)(()=>Promise.all([a.e(4243),a.e(4945),a.e(2262)]).then(a.bind(a,1833)))},{key:"dash",name:"dash.js",canPlay:h.dash,canEnablePIP:()=>!0,player:(0,n.lazy)(()=>Promise.all([a.e(4243),a.e(6395)]).then(a.bind(a,9380)))},{key:"mux",name:"Mux",canPlay:h.mux,canEnablePIP:()=>!0,player:(0,n.lazy)(()=>Promise.all([a.e(4243),a.e(4945),a.e(2723)]).then(a.bind(a,994)))},{key:"youtube",name:"YouTube",canPlay:h.youtube,player:(0,n.lazy)(()=>a.e(8446).then(a.bind(a,126)))},{key:"vimeo",name:"Vimeo",canPlay:h.vimeo,player:(0,n.lazy)(()=>a.e(6173).then(a.bind(a,9301)))},{key:"wistia",name:"Wistia",canPlay:h.wistia,canEnablePIP:()=>!0,player:(0,n.lazy)(()=>a.e(9340).then(a.bind(a,9971)))},{key:"spotify",name:"Spotify",canPlay:h.spotify,canEnablePIP:()=>!1,player:(0,n.lazy)(()=>a.e(2771).then(a.bind(a,9422)))},{key:"twitch",name:"Twitch",canPlay:h.twitch,canEnablePIP:()=>!1,player:(0,n.lazy)(()=>a.e(2042).then(a.bind(a,5946)))}
1,{key:"tiktok",name:"TikTok",canPlay:h.tiktok,canEnablePIP:()=>!1,player:(0,n.lazy)(()=>a.e(8085).then(a.bind(a,3173)))},{key:"html",name:"html",canPlay:h.html,canEnablePIP:()=>!0,player:f}];const P={width:"320px",height:"180px",volume:1,playbackRate:1,previewTabIndex:0,previewAriaLabel:"",oEmbedUrl:"https://noembed.com/embed?url={url}"},w=n.forwardRef((e,t)=>{const{playing:a,pip:r}=e,l=e.activePlayer,s=(0,n.useRef)(null),o=(0,n.useRef)(!0);(0,n.useEffect)(()=>{var t,n;s.current&&(s.current.paused&&!0===a&&s.current.play(),s.current.paused||!1!==a||s.current.pause(),s.current.playbackRate=null!=(t=e.playbackRate)?t:1,s.current.volume=null!=(n=e.volume)?n:1)}),(0,n.useEffect)(()=>{var e,t,a,n,l;if(s.current&&globalThis.document){if(r&&!document.pictureInPictureElement)try{null==(t=(e=s.current).requestPictureInPicture)||t.call(e)}catch(o){}if(!r&&document.pictureInPictureElement)try{null==(n=(a=s.current).exitPictureInPicture)||n.call(a),null==(l=document.exitPictureInPicture)||l.call(document)}catch(o){}}},[r]);if(!l)return null;const i={},c=["onReady","onStart"];for(const n in e)n.startsWith("on")&&!c.includes(n)&&(i[n]=e[n]);return n.createElement(l,{...i,style:e.style,className:e.className,slot:e.slot,ref:(0,n.useCallback)(e=>{s.current=e,"function"==typeof t?t(e):null!==t&&(t.current=e)},[t]),src:e.src,crossOrigin:e.crossOrigin,preload:e.preload,controls:e.controls,muted:e.muted,autoPlay:e.autoPlay,loop:e.loop,playsInline:e.playsInline,disableRemotePlayback:e.disableRemotePlayback,config:e.config,onLoadStart:t=>{var a,n;o.current=!0,null==(a=e.onReady)||a.call(e),null==(n=e.onLoadStart)||n.call(e,t)},onPlay:t=>{var a,n;o.current&&(o.current=!1,null==(a=e.onStart)||a.call(e,t)),null==(n=e.onPlay)||n.call(e,t)}},e.children)});w.displayName="Player";var k=w;const g=(0,n.lazy)(()=>a.e(6353).then(a.bind(a,1924))),E=[],x=({children:e})=>e;var I=((e,t)=>{const a=n.forwardRef((a,r)=>{const l={...P,...a},{src:s,slot:o,className:i,style:c,width:u,height:d,fallback:m,wrapper:y}=l,[p,b]=(0,n.useState)(!!l.light);(0,n.useEffect)(()=>{l.light?b(!0):b(!1)},[l.light]);const h=e=>{var t;b(!1),null==(t=l.onClickPreview)||t.call(l,e)},f=null==y?x:y,v=!1===m?x:n.Suspense;return n.createElement(f,{slot:o,className:i,style:{width:u,height:d,...c}},n.createElement(v,{fallback:m},p?(e=>{if(!e)return null;const{light:t,playIcon:a,previewTabIndex:r,oEmbedUrl:s,previewAriaLabel:o}=l;return n.createElement(g,{src:e,light:t,playIcon:a,previewTabIndex:r,previewAriaLabel:o,oEmbedUrl:s,onClickPreview:h})})(s):(a=>{var s,c;const u=(a=>{for(const t of[...E,...e])if(a&&t.canPlay(a))return t;return t||null})(a);if(!u)return null;const{style:d,width:m,height:y,wrapper:p}=l,b=null==(s=l.config)?void 0:s[u.key];return n.createElement(k,{...l,ref:r,activePlayer:null!=(c=u.player)?c:u,slot:p?void 0:o,className:p?void 0:i,style:p?{display:"block",width:"100%",height:"100%"}:{display:"block",width:m,height:y,...d},config:b})})(s)))});return a.displayName="ReactPlayer",a.addCustomPlayer=e=>{E.push(e)},a.removeCustomPlayers=()=>{E.length=0},a.canPlay=t=>{if(t)for(const a of[...E,...e])if(a.canPlay(t))return!0;return!1},a.canEnablePIP=t=>{var a;if(t)for(const n of[...E,...e])if(n.canPlay(t)&&(null==(a=n.canEnablePIP)?void 0:a.call(n)))return!0;return!1},a})(v,v[v.length-1])}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.