[{"data":1,"prerenderedAt":709},["ShallowReactive",2],{"docs-pages-en":3,"doc-en-performance":308},[4,9,15,20,25,30,35,41,52,60,69,77,84,92,96,105,109,117,122,127,132,138,143,148,153,158,163,169,174,179,184,189,194,199,204,209,214,219,224,229,234,239,244,249,254,260,265,269,273,278,283,288,293,298,303],{"path":5,"title":6,"description":7,"order":8,"group":8,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fpermissions","Who can do what","[object Object]",null,{"path":10,"title":11,"description":12,"order":13,"group":14,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Finstallation","Installation","Install CloseYourIt on your own server with one command.",1,"start",{"path":16,"title":17,"description":18,"order":19,"group":14,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fsettings","Settings","Every setting in the .env file, what it does and which ones you must never change.",2,{"path":21,"title":22,"description":23,"order":24,"group":14,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fdatabase","Database","What the database is, what is inside, how long data stays and how much room it takes.",3,{"path":26,"title":27,"description":28,"order":29,"group":14,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fupdates-and-backups","Updates and backups","Update to a new version, back up and restore the database, check the install.",4,{"path":31,"title":32,"description":33,"order":34,"group":14,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Ftroubleshooting","Troubleshooting","What to check when the install, the certificate, email or incoming data do not work.",5,{"path":36,"title":37,"description":38,"order":39,"group":40,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fconnect-your-apps","Connect your apps","Every tool that sends data to CloseYourIt, and what each one collects.",6,"connect",{"path":42,"title":43,"description":44,"order":45,"group":8,"parent":46,"package":47,"note":48,"collects":49,"status":8},"\u002Fdocs\u002Fsdk-ruby","Ruby \u002F Rails","The closeyourit-ruby gem sends errors, logs, slow queries and job metrics from a Rails app.",7,"connect-your-apps","closeyourit-ruby","Errors, logs, slow queries and methods, background jobs.",{"errors":50,"logs":50,"performance":50,"visits":51,"servers":51},"full","none",{"path":53,"title":54,"description":55,"order":56,"group":8,"parent":46,"package":57,"note":58,"collects":59,"status":8},"\u002Fdocs\u002Fsdk-javascript","JavaScript","The @bussolabs\u002Fcloseyourit-js package works in the browser and on Node 20.16 or newer.",8,"@bussolabs\u002Fcloseyourit-js","Browser and Node, framework adapters and database queries from 0.13.0.",{"errors":50,"logs":50,"performance":50,"visits":50,"servers":51},{"path":61,"title":62,"description":63,"order":64,"group":8,"parent":46,"package":65,"note":66,"collects":67,"status":8},"\u002Fdocs\u002Fsdk-dart","Dart \u002F Flutter","The closeyourit package captures the errors of Flutter apps, even when the phone is offline.",9,"closeyourit","Public errors, logs and metrics from 0.9.3.",{"errors":50,"logs":68,"performance":68,"visits":51,"servers":51},"partial",{"path":70,"title":71,"description":72,"order":73,"group":8,"parent":46,"package":65,"note":74,"collects":75,"status":76},"\u002Fdocs\u002Fsdk-python","Python","The closeyourit package sends errors, logs and metrics from server-side Python applications.",10,"Server side. SQLAlchemy; Django query monitoring and FastAPI\u002FStarlette from 0.4.0.",{"errors":50,"logs":50,"performance":68,"visits":51,"servers":51},"pre_alpha",{"path":78,"title":79,"description":80,"order":81,"group":8,"parent":46,"package":79,"note":82,"collects":83,"status":8},"\u002Fdocs\u002Fsdk-sentry","Sentry SDK","Send errors with a compatible Sentry SDK; sessions and crashes have separate profiles.",11,"Compatible errors; sessions and crashes require a verified profile.",{"errors":50,"logs":51,"performance":51,"visits":51,"servers":51},{"path":85,"title":86,"description":87,"order":88,"group":8,"parent":46,"package":89,"note":90,"collects":91,"status":8},"\u002Fdocs\u002Fagent-server","Server agent","A small program on the server that sends the state of the machine every 60 seconds.",12,"closeyourit-agent","CPU, memory, disks, network, containers and services.",{"errors":51,"logs":68,"performance":51,"visits":51,"servers":50},{"path":93,"title":94,"description":95,"order":88,"group":40,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fnuxt","Vue and Nuxt","Connect Nuxt browser errors and Nitro server errors without exposing a server token.",{"path":97,"title":98,"description":99,"order":100,"group":8,"parent":46,"package":101,"note":102,"collects":103,"status":104},"\u002Fdocs\u002Fagent-kubernetes","Kubernetes","A read-only observer of the cluster: one copy per cluster.",13,"closeyourit-kube","Machines, apps and error events of the cluster.",{"errors":51,"logs":51,"performance":51,"visits":51,"servers":50},"coming",{"path":106,"title":107,"description":108,"order":100,"group":40,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fopentelemetry","OpenTelemetry","Send server traces, metrics and logs through the optional OTLP receiver.",{"path":110,"title":111,"description":112,"order":113,"group":8,"parent":46,"package":114,"note":115,"collects":116,"status":8},"\u002Fdocs\u002Fcli","cyi CLI","The closeyourit command, cyi for short: manage projects, errors and tickets from the terminal.",14,"@bussolabs\u002Fcloseyourit-cli","It collects no data: it drives CloseYourIt from the terminal.",{"errors":51,"logs":51,"performance":51,"visits":51,"servers":51},{"path":118,"title":119,"description":120,"order":121,"group":40,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fhttp-api","HTTP API","Send errors, logs, metrics and page views with plain HTTP requests, without an SDK.",15,{"path":123,"title":124,"description":125,"order":126,"group":40,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fgithub-app","GitHub","Connect GitHub repositories to tickets and releases with your own GitHub App.",16,{"path":128,"title":129,"description":130,"order":131,"group":40,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fingest-gateway","Ingest gateway","Keep incoming errors, logs and metrics safe when the app is slow or restarting.",17,{"path":133,"title":134,"description":135,"order":136,"group":137,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fai","AI","Turn on assistant, analysis, dictation and smart search with a CloseYourIt AI key or your own provider.",18,"automation",{"path":139,"title":140,"description":141,"order":142,"group":137,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fautomator","Automator","Let tickets be worked automatically on your own Linux machine, with Claude Code, Codex or both.",19,{"path":144,"title":145,"description":146,"order":147,"group":40,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fstack-coverage","Frameworks and stack coverage","Choose a published SDK or understand the limits of a locally tested integration.",20,{"path":149,"title":150,"description":151,"order":152,"group":40,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fmonitoring","Traces, measurements and sessions","Explore the new signals, compare releases and recover original error locations.",21,{"path":154,"title":155,"description":156,"order":157,"group":40,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fnode-database","Node databases","Monitor slow and repeated queries with pg, mysql2, Drizzle and Prisma PostgreSQL.",22,{"path":159,"title":160,"description":161,"order":162,"group":137,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fclaude-code","Claude Code","CloseYourIt inside Claude Code, in a column next to the conversation with production and your open tickets.",23,{"path":164,"title":165,"description":166,"order":167,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Ftickets","Tickets and ideas","Open and follow tickets on the board, group them into milestones, ask questions and turn voted ideas into work.",30,"use",{"path":170,"title":171,"description":172,"order":173,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Ferrors","Errors","How your apps' errors become single rows, and how to resolve, ignore, merge or turn them into tickets.",31,{"path":175,"title":176,"description":177,"order":178,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fperformance","Performance","Find slow queries and methods, read the problems detected automatically and get an alert when one appears.",32,{"path":180,"title":181,"description":182,"order":183,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Flogs","Logs","Search your apps' messages, follow a request from start to end and link a message to an error or a ticket.",33,{"path":185,"title":186,"description":187,"order":188,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fsecrets","Secrets","Passwords, keys and private files in one place, per project and environment, read by your app without a .env on disk.",34,{"path":190,"title":191,"description":192,"order":193,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fservers","Servers","The state of your machines on one page, with history and alerts when something breaks or fills up.",35,{"path":195,"title":196,"description":197,"order":198,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fuptime","Uptime","Check that your sites answer, keep count of outages and show them to customers on a status page.",36,{"path":200,"title":201,"description":202,"order":203,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fcrons","Scheduled jobs","Notice when a job that should run on its own stops running, or runs and ends badly.",37,{"path":205,"title":206,"description":207,"order":208,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Falerts","Alerts","The rules that create an alert, the notification center and where each person chooses to receive them.",38,{"path":210,"title":211,"description":212,"order":213,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fhelpdesk","Help desk","Visitors of a project's site write to the team with the \"Need help?\" button, and the request lands in the right project.",39,{"path":215,"title":216,"description":217,"order":218,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fanalytics","Site analytics","How many people visit the site, what they look at and where they come from, without cookies.",40,{"path":220,"title":221,"description":222,"order":223,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Freplays","Session replay","Record how people move through the site and watch it back like a video, even next to an error.",41,{"path":225,"title":226,"description":227,"order":228,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Freleases","Releases","The versions running in each environment, bound to GitHub tags, and the errors that come back after a fix.",42,{"path":230,"title":231,"description":232,"order":233,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fvulnerabilities","Vulnerabilities","Known security problems in your projects' libraries, and the languages that no longer get fixes.",43,{"path":235,"title":236,"description":237,"order":238,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fseo","SEO","CloseYourIt visits your sites like a search engine and tells you what keeps your pages from being found.",44,{"path":240,"title":241,"description":242,"order":243,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fknowledge","Knowledge base","Write notes, decisions and guides for your projects, find them by meaning and ask questions with sources.",45,{"path":245,"title":246,"description":247,"order":248,"group":168,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fagents","AI agents","Which tickets agents take, what they hand you, where you decide and how each machine is measured.",46,{"path":250,"title":251,"description":252,"order":253,"group":14,"parent":8,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fchangelog","Versions","Every CloseYourIt system with its latest version, and the notes of each release.",50,{"path":255,"title":256,"description":257,"order":258,"group":8,"parent":259,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fchangelog-app","App","Every stable version of App, newest first.",51,"changelog",{"path":261,"title":262,"description":263,"order":264,"group":8,"parent":259,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fchangelog-cli","Command line (cyi)","Every stable version of Command line (cyi), newest first.",52,{"path":266,"title":140,"description":267,"order":268,"group":8,"parent":259,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fchangelog-automator","Every stable version of Automator, newest first.",53,{"path":270,"title":86,"description":271,"order":272,"group":8,"parent":259,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fchangelog-agent-server","Every stable version of Server agent, newest first.",54,{"path":274,"title":275,"description":276,"order":277,"group":8,"parent":259,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fchangelog-agent-kubernetes","Kubernetes agent","Every stable version of Kubernetes agent, newest first.",55,{"path":279,"title":280,"description":281,"order":282,"group":8,"parent":259,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fchangelog-sdk-javascript","JavaScript SDK","Every stable version of JavaScript SDK, newest first.",56,{"path":284,"title":285,"description":286,"order":287,"group":8,"parent":259,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fchangelog-sdk-ruby","Ruby SDK","Every stable version of Ruby SDK, newest first.",57,{"path":289,"title":290,"description":291,"order":292,"group":8,"parent":259,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fchangelog-sdk-python","Python SDK","Every stable version of Python SDK, newest first.",58,{"path":294,"title":295,"description":296,"order":297,"group":8,"parent":259,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fchangelog-sdk-dart","Dart SDK","Every stable version of Dart SDK, newest first.",59,{"path":299,"title":300,"description":301,"order":302,"group":8,"parent":259,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fchangelog-skills","Skills for AI assistants","Every stable version of Skills for AI assistants, newest first.",60,{"path":304,"title":305,"description":306,"order":307,"group":8,"parent":259,"package":8,"note":8,"collects":8,"status":8},"\u002Fdocs\u002Fchangelog-site","Website and docs","Every stable version of Website and docs, newest first.",61,{"id":309,"title":176,"body":310,"collects":8,"description":177,"extension":703,"group":168,"meta":704,"navigation":705,"note":8,"order":178,"package":8,"parent":8,"path":175,"seo":706,"status":8,"stem":707,"__hash__":708},"docs_en\u002Fdocs\u002Fperformance.md",{"type":311,"value":312,"toc":694},"minimark",[313,325,330,337,368,379,383,473,479,483,494,501,511,518,522,533,551,555,580,587,645,648,652,658,674,678,690],[314,315,316,319,320,324],"p",{},[317,318,176],"strong",{}," shows the slow spots of your apps. It groups them like errors: the same slowness repeated is one row, with its timings. The data comes from the ",[321,322,323],"a",{"href":36},"SDKs"," that can send it.",[326,327,329],"h2",{"id":328},"what-you-find-in-the-list","What you find in the list",[314,331,332,333,336],{},"Each row has a ",[317,334,335],{},"Category",":",[338,339,340,356,362],"ul",{},[341,342,343,346,347,351,352,355],"li",{},[317,344,345],{},"Slow query",": a database request that takes too long. Queries are grouped by shape, not by the values they contain: ",[348,349,350],"code",{},"WHERE id = 4"," and ",[348,353,354],{},"WHERE id = 9"," are the same group.",[341,357,358,361],{},[317,359,360],{},"Slow method",": a part of the program you measure yourself, grouped by the name you give it.",[341,363,364,367],{},[317,365,366],{},"Performance issue",": a slowdown the monitoring detects by itself while the app works.",[314,369,370,371,374,375,378],{},"For each group you see how many times it happened, the average duration, the longest one and the ",[317,372,373],{},"Total time"," spent. The ",[317,376,377],{},"few samples"," mark means fewer than 20 cases: the average is not reliable yet.",[326,380,382],{"id":381},"problems-detected-automatically","Problems detected automatically",[384,385,386,399],"table",{},[387,388,389],"thead",{},[390,391,392,396],"tr",{},[393,394,395],"th",{},"Problem type",[393,397,398],{},"What it means",[400,401,402,413,423,433,443,453,463],"tbody",{},[390,403,404,410],{},[405,406,407],"td",{},[317,408,409],{},"N+1 query",[405,411,412],{},"many almost identical database requests in a row, instead of one",[390,414,415,420],{},[405,416,417],{},[317,418,419],{},"High query count",[405,421,422],{},"a single request queries the database too many times",[390,424,425,430],{},[405,426,427],{},[317,428,429],{},"Slow request",[405,431,432],{},"a page or an action responds too slowly",[390,434,435,440],{},[405,436,437],{},[317,438,439],{},"Slow external HTTP",[405,441,442],{},"a call to an external service takes too long",[390,444,445,450],{},[405,446,447],{},[317,448,449],{},"Repeated HTTP",[405,451,452],{},"the same call to an external service repeated several times",[390,454,455,460],{},[405,456,457],{},[317,458,459],{},"Jank (slow frame)",[405,461,462],{},"stutter in the app: a screen drawn too slowly",[390,464,465,470],{},[405,466,467],{},[317,468,469],{},"Rebuild storm",[405,471,472],{},"in the app a screen redraws too many times in a row",[314,474,475,476,478],{},"The first four come from server applications, the last three from mobile apps. You only see the ones your programs can send. To filter them use ",[317,477,395],{},".",[326,480,482],{"id":481},"tell-if-something-is-getting-worse","Tell if something is getting worse",[314,484,485,486,489,490,493],{},"Open a group. The first chart is ",[317,487,488],{},"Duration over time",": each bar is the worst case in that slice of time (p95, the time only 5% of cases exceed). Hovering shows the typical case too (p50). The second chart, ",[317,491,492],{},"Occurrences over time",", counts how many times it happened. They are two different charts because something can happen just as often and meanwhile take twice as long.",[314,495,496,497,500],{},"Above the chart is the ",[317,498,499],{},"Average in the period"," and how much it changed against the previous period of the same length: for example the last 24 hours against the 24 before. If there was no earlier data, the page says so instead of making up a change.",[314,502,503,504,507,508,478],{},"Below are the occurrences. Select one to see the query, with values replaced by ",[348,505,506],{},"?",", and the ",[317,509,510],{},"Logs & errors of this request",[314,512,513,514,517],{},"The actual values used by a query (the ",[317,515,516],{},"Parameters",") are not collected by default. The page shows the line to add where you connect the app to collect them. They may contain personal data: they are saved as they are and anyone who sees the page sees them. Columns like passwords and tokens stay hidden anyway.",[326,519,521],{"id":520},"change-when-something-counts-as-slow","Change when something counts as slow",[314,523,524,525,528,529,532],{},"Timings are colored: green below ",[317,526,527],{},"150 ms",", amber in between, red from ",[317,530,531],{},"500 ms"," up. Each project can have its own thresholds:",[534,535,536,541,548],"ol",{},[341,537,538,539,478],{},"Open the project, then ",[317,540,17],{},[341,542,543,544,547],{},"In the ",[317,545,546],{},"When an operation counts as slow"," section write the milliseconds for green and for red.",[341,549,550],{},"Leave them empty to use the default values.",[326,552,554],{"id":553},"sort-and-open-a-ticket","Sort and open a ticket",[314,556,557,558,561,562,565,566,569,570,561,573,565,576,579],{},"Like errors, each group is ",[317,559,560],{},"Unresolved",", ",[317,563,564],{},"Resolved"," or ",[317,567,568],{},"Ignored",". To change the status, select one or more groups in the list and use ",[317,571,572],{},"Resolve",[317,574,575],{},"Ignore",[317,577,578],{},"Reopen"," in the bar that appears. Unlike errors, a resolved group does not reopen by itself.",[314,581,582,583,586],{},"To turn a slowdown into work, open it and press ",[317,584,585],{},"Promote to ticket",": a ticket linked to the group is created.",[588,589,594],"pre",{"className":590,"code":591,"language":592,"meta":593,"style":593},"language-bash shiki shiki-themes github-light github-dark","cyi metrics list --project acme-api\ncyi metrics promote \u003Cid> --project acme-api\n","bash","",[348,595,596,618],{"__ignoreMap":593},[597,598,600,604,608,611,615],"span",{"class":599,"line":13},"line",[597,601,603],{"class":602},"sScJk","cyi",[597,605,607],{"class":606},"sZZnC"," metrics",[597,609,610],{"class":606}," list",[597,612,614],{"class":613},"sj4cs"," --project",[597,616,617],{"class":606}," acme-api\n",[597,619,620,622,624,627,631,634,638,641,643],{"class":599,"line":19},[597,621,603],{"class":602},[597,623,607],{"class":606},[597,625,626],{"class":606}," promote",[597,628,630],{"class":629},"szBVR"," \u003C",[597,632,633],{"class":606},"i",[597,635,637],{"class":636},"sVt8B","d",[597,639,640],{"class":629},">",[597,642,614],{"class":613},[597,644,617],{"class":606},[314,646,647],{},"Sorting and promoting need the \"Promote slow query\u002Fmethod to ticket\" permission.",[326,649,651],{"id":650},"get-an-alert","Get an alert",[314,653,654,655,657],{},"The ",[317,656,366],{}," alert rule fires when a problem detected automatically arrives. Slow queries and slow methods do not create alerts. The same group does not trigger more than one alert per hour.",[314,659,660,661,664,665,561,667,351,669,671,672,478],{},"In the rule you can set the ",[317,662,663],{},"Duration threshold",": the alert fires only if the case lasts at least that many milliseconds. It does not apply to ",[317,666,419],{},[317,668,449],{},[317,670,469],{},", which are measured by counting, not by duration. How to create rules: ",[321,673,206],{"href":205},[326,675,677],{"id":676},"how-long-data-is-kept","How long data is kept",[314,679,680,681,684,685,561,687,478],{},"Single cases are kept for ",[317,682,683],{},"30 days","; the total count stays forever. The duration chart only looks back as far as retention. To change it: project, ",[317,686,17],{},[317,688,689],{},"Performance retention (days)",[691,692,693],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":593,"searchDepth":19,"depth":19,"links":695},[696,697,698,699,700,701,702],{"id":328,"depth":19,"text":329},{"id":381,"depth":19,"text":382},{"id":481,"depth":19,"text":482},{"id":520,"depth":19,"text":521},{"id":553,"depth":19,"text":554},{"id":650,"depth":19,"text":651},{"id":676,"depth":19,"text":677},"md",{},true,{"title":176,"description":177},"docs\u002Fperformance","iLSfW5fjJweXP6SV3r1cSTNpttqttIQb-RW3H-QuN3Y",1791469656378]