UNPKG

769 BJavaScriptView Raw
1'use strict'
2
3const debug = require('debug')('doctor')
4
5function issueCategory (issues) {
6 debug('detected issues', issues)
7 const memoryIssue = (issues.memory.external || issues.memory.rss ||
8 issues.memory.heapTotal || issues.memory.heapUsed)
9
10 let category = 'unknown'
11
12 if (memoryIssue && !issues.cpu && !issues.handles) {
13 category = 'gc'
14 } else if (!memoryIssue && issues.delay && !issues.cpu && !issues.handles) {
15 category = 'event-loop'
16 } else if (!memoryIssue && !issues.delay && (issues.cpu || issues.handles)) {
17 category = 'io'
18 } else if (!memoryIssue && !issues.delay && !issues.cpu && !issues.handles) {
19 category = 'none'
20 }
21
22 debug('category', category)
23
24 return category
25}
26module.exports = issueCategory