| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent 732f9a7 commit a2620ac
3 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -198,10 +198,13 @@ is provided below for reference. | |||
| 198 | 198 | } | |
| 199 | 199 | }, | |
| 200 | 200 | "resourceUsage": { | |
| 201 | - "userCpuSeconds": 0.069595, | ||
| 202 | - "kernelCpuSeconds": 0.019163, | ||
| 203 | - "cpuConsumptionPercent": 0.000000, | ||
| 204 | - "maxRss": 18079744, | ||
| 201 | + "rss": 45768704, | ||
| 202 | + "userCpuSeconds": 0.040072, | ||
| 203 | + "kernelCpuSeconds": 0.016029, | ||
| 204 | + "cpuConsumptionPercent": 5.6101, | ||
| 205 | + "userCpuConsumptionPercent": 4.0072, | ||
| 206 | + "kernelCpuConsumptionPercent": 1.6029, | ||
| 207 | + "maxRss": 45768704, | ||
| 205 | 208 | "pageFaults": { | |
| 206 | 209 | "IORequired": 0, | |
| 207 | 210 | "IONotRequired": 4610 | |
@@ -212,9 +215,11 @@ is provided below for reference. | |||
| 212 | 215 | } | |
| 213 | 216 | }, | |
| 214 | 217 | "uvthreadResourceUsage": { | |
| 215 | - "userCpuSeconds": 0.068457, | ||
| 216 | - "kernelCpuSeconds": 0.019127, | ||
| 217 | - "cpuConsumptionPercent": 0.000000, | ||
| 218 | + "userCpuSeconds": 0.039843, | ||
| 219 | + "kernelCpuSeconds": 0.015937, | ||
| 220 | + "cpuConsumptionPercent": 5.578, | ||
| 221 | + "userCpuConsumptionPercent": 3.9843, | ||
| 222 | + "kernelCpuConsumptionPercent": 1.5937, | ||
| 218 | 223 | "fsActivity": { | |
| 219 | 224 | "reads": 0, | |
| 220 | 225 | "writes": 0 | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -627,6 +627,13 @@ static void PrintResourceUsage(JSONWriter* writer) { | |||
| 627 | 627 | // Process and current thread usage statistics | |
| 628 | 628 | uv_rusage_t rusage; | |
| 629 | 629 | writer->json_objectstart("resourceUsage"); | |
| 630 | + | ||
| 631 | + size_t rss; | ||
| 632 | + int err = uv_resident_set_memory(&rss); | ||
| 633 | + if (!err) { | ||
| 634 | + writer->json_keyvalue("rss", rss); | ||
| 635 | + } | ||
| 636 | + | ||
| 630 | 637 | if (uv_getrusage(&rusage) == 0) { | |
| 631 | 638 | double user_cpu = | |
| 632 | 639 | rusage.ru_utime.tv_sec + SEC_PER_MICROS * rusage.ru_utime.tv_usec; | |
@@ -636,7 +643,11 @@ static void PrintResourceUsage(JSONWriter* writer) { | |||
| 636 | 643 | writer->json_keyvalue("kernelCpuSeconds", kernel_cpu); | |
| 637 | 644 | double cpu_abs = user_cpu + kernel_cpu; | |
| 638 | 645 | double cpu_percentage = (cpu_abs / uptime) * 100.0; | |
| 646 | + double user_cpu_percentage = (user_cpu / uptime) * 100.0; | ||
| 647 | + double kernel_cpu_percentage = (kernel_cpu / uptime) * 100.0; | ||
| 639 | 648 | writer->json_keyvalue("cpuConsumptionPercent", cpu_percentage); | |
| 649 | + writer->json_keyvalue("userCpuConsumptionPercent", user_cpu_percentage); | ||
| 650 | + writer->json_keyvalue("kernelCpuConsumptionPercent", kernel_cpu_percentage); | ||
| 640 | 651 | writer->json_keyvalue("maxRss", rusage.ru_maxrss * 1024); | |
| 641 | 652 | writer->json_objectstart("pageFaults"); | |
| 642 | 653 | writer->json_keyvalue("IORequired", rusage.ru_majflt); | |
@@ -660,7 +671,11 @@ static void PrintResourceUsage(JSONWriter* writer) { | |||
| 660 | 671 | writer->json_keyvalue("kernelCpuSeconds", kernel_cpu); | |
| 661 | 672 | double cpu_abs = user_cpu + kernel_cpu; | |
| 662 | 673 | double cpu_percentage = (cpu_abs / uptime) * 100.0; | |
| 674 | + double user_cpu_percentage = (user_cpu / uptime) * 100.0; | ||
| 675 | + double kernel_cpu_percentage = (kernel_cpu / uptime) * 100.0; | ||
| 663 | 676 | writer->json_keyvalue("cpuConsumptionPercent", cpu_percentage); | |
| 677 | + writer->json_keyvalue("userCpuConsumptionPercent", user_cpu_percentage); | ||
| 678 | + writer->json_keyvalue("kernelCpuConsumptionPercent", kernel_cpu_percentage); | ||
| 664 | 679 | writer->json_objectstart("fsActivity"); | |
| 665 | 680 | writer->json_keyvalue("reads", stats.ru_inblock); | |
| 666 | 681 | writer->json_keyvalue("writes", stats.ru_oublock); | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -234,12 +234,16 @@ function _validateContent(report, fields = []) { | |||
| 234 | 234 | // Verify the format of the resourceUsage section. | |
| 235 | 235 | const usage = report.resourceUsage; | |
| 236 | 236 | const resourceUsageFields = ['userCpuSeconds', 'kernelCpuSeconds', | |
| 237 | - 'cpuConsumptionPercent', 'maxRss', | ||
| 237 | + 'cpuConsumptionPercent', 'userCpuConsumptionPercent', | ||
| 238 | + 'kernelCpuConsumptionPercent', 'rss', 'maxRss', | ||
| 238 | 239 | 'pageFaults', 'fsActivity']; | |
| 239 | 240 | checkForUnknownFields(usage, resourceUsageFields); | |
| 240 | 241 | assert.strictEqual(typeof usage.userCpuSeconds, 'number'); | |
| 241 | 242 | assert.strictEqual(typeof usage.kernelCpuSeconds, 'number'); | |
| 242 | 243 | assert.strictEqual(typeof usage.cpuConsumptionPercent, 'number'); | |
| 244 | + assert.strictEqual(typeof usage.userCpuConsumptionPercent, 'number'); | ||
| 245 | + assert.strictEqual(typeof usage.kernelCpuConsumptionPercent, 'number'); | ||
| 246 | + assert(Number.isSafeInteger(usage.rss)); | ||
| 243 | 247 | assert(Number.isSafeInteger(usage.maxRss)); | |
| 244 | 248 | assert(typeof usage.pageFaults === 'object' && usage.pageFaults !== null); | |
| 245 | 249 | checkForUnknownFields(usage.pageFaults, ['IORequired', 'IONotRequired']); | |
@@ -254,11 +258,15 @@ function _validateContent(report, fields = []) { | |||
| 254 | 258 | if (report.uvthreadResourceUsage) { | |
| 255 | 259 | const usage = report.uvthreadResourceUsage; | |
| 256 | 260 | const threadUsageFields = ['userCpuSeconds', 'kernelCpuSeconds', | |
| 257 | - 'cpuConsumptionPercent', 'fsActivity']; | ||
| 261 | + 'cpuConsumptionPercent', 'fsActivity', | ||
| 262 | + 'userCpuConsumptionPercent', | ||
| 263 | + 'kernelCpuConsumptionPercent']; | ||
| 258 | 264 | checkForUnknownFields(usage, threadUsageFields); | |
| 259 | 265 | assert.strictEqual(typeof usage.userCpuSeconds, 'number'); | |
| 260 | 266 | assert.strictEqual(typeof usage.kernelCpuSeconds, 'number'); | |
| 261 | 267 | assert.strictEqual(typeof usage.cpuConsumptionPercent, 'number'); | |
| 268 | + assert.strictEqual(typeof usage.userCpuConsumptionPercent, 'number'); | ||
| 269 | + assert.strictEqual(typeof usage.kernelCpuConsumptionPercent, 'number'); | ||
| 262 | 270 | assert(typeof usage.fsActivity === 'object' && usage.fsActivity !== null); | |
| 263 | 271 | checkForUnknownFields(usage.fsActivity, ['reads', 'writes']); | |
| 264 | 272 | assert(Number.isSafeInteger(usage.fsActivity.reads)); | |
| Back | FazBrowse Home | New Git URL |
0 commit comments