id: 1 unit: func main() file: cmd/node-termination-handler.go start line: 57 end line: 257 size: 178 LOC McCabe index: 36 number of parameters: 0 id: 2 unit: func() file: pkg/config/config.go start line: 275 end line: 354 size: 79 LOC McCabe index: 2 number of parameters: 1 id: 3 unit: func Post() file: pkg/webhook/webhook.go start line: 40 end line: 123 size: 73 LOC McCabe index: 13 number of parameters: 3 id: 4 unit: func ParseCliArgs() file: pkg/config/config.go start line: 146 end line: 223 size: 72 LOC McCabe index: 9 number of parameters: 0 id: 5 unit: func() file: pkg/monitor/sqsevent/sqs-monitor.go start line: 242 end line: 314 size: 62 LOC McCabe index: 18 number of parameters: 1 id: 6 unit: func() file: pkg/monitor/sqsevent/asg-lifecycle-event.go start line: 60 end line: 115 size: 51 LOC McCabe index: 8 number of parameters: 1 id: 7 unit: func removeTaint() file: pkg/node/node.go start line: 632 end line: 687 size: 51 LOC McCabe index: 13 number of parameters: 3 id: 8 unit: func addTaint() file: pkg/node/node.go start line: 557 end line: 611 size: 50 LOC McCabe index: 12 number of parameters: 4 id: 9 unit: func() file: pkg/ec2metadata/ec2metadata.go start line: 216 end line: 262 size: 47 LOC McCabe index: 11 number of parameters: 1 id: 10 unit: func InitK8sEventRecorder() file: pkg/observability/k8s-events.go start line: 78 end line: 129 size: 46 LOC McCabe index: 7 number of parameters: 5 id: 11 unit: func() file: pkg/monitor/sqsevent/scheduled-change-event.go start line: 70 end line: 122 size: 45 LOC McCabe index: 8 number of parameters: 1 id: 12 unit: func() file: pkg/node/node.go start line: 429 end line: 475 size: 43 LOC McCabe index: 10 number of parameters: 1 id: 13 unit: func drainOrCordonIfNecessary() file: cmd/node-termination-handler.go start line: 317 end line: 360 size: 39 LOC McCabe index: 12 number of parameters: 8 id: 14 unit: func() file: pkg/monitor/sqsevent/sqs-monitor.go start line: 139 end line: 190 size: 38 LOC McCabe index: 11 number of parameters: 1 id: 15 unit: func() file: pkg/config/config.go start line: 235 end line: 272 size: 36 LOC McCabe index: 1 number of parameters: 1 id: 16 unit: func() file: pkg/monitor/scheduledevent/scheduled-event-monitor.go start line: 78 end line: 114 size: 36 LOC McCabe index: 8 number of parameters: 1 id: 17 unit: func() file: pkg/monitor/sqsevent/spot-itn-event.go start line: 51 end line: 87 size: 36 LOC McCabe index: 5 number of parameters: 1 id: 18 unit: func() file: pkg/monitor/sqsevent/rebalance-recommendation-event.go start line: 49 end line: 85 size: 36 LOC McCabe index: 5 number of parameters: 1 id: 19 unit: func() file: pkg/monitor/sqsevent/ec2-state-change-event.go start line: 53 end line: 87 size: 32 LOC McCabe index: 5 number of parameters: 1 id: 20 unit: func() file: pkg/node/node.go start line: 221 end line: 252 size: 32 LOC McCabe index: 5 number of parameters: 1 id: 21 unit: func() file: pkg/ec2metadata/ec2metadata.go start line: 264 end line: 292 size: 29 LOC McCabe index: 6 number of parameters: 1 id: 22 unit: func() file: pkg/node/node.go start line: 255 end line: 283 size: 28 LOC McCabe index: 5 number of parameters: 1 id: 23 unit: func watchForCancellationEvents() file: cmd/node-termination-handler.go start line: 286 end line: 315 size: 28 LOC McCabe index: 6 number of parameters: 5 id: 24 unit: func InitMetrics() file: pkg/observability/opentelemetry.go start line: 46 end line: 80 size: 27 LOC McCabe index: 6 number of parameters: 2 id: 25 unit: func() file: pkg/monitor/spotitn/spot-itn-monitor.go start line: 67 end line: 97 size: 27 LOC McCabe index: 6 number of parameters: 1 id: 26 unit: func() file: pkg/monitor/rebalancerecommendation/rebalance-recommendation-monitor.go start line: 65 end line: 95 size: 27 LOC McCabe index: 5 number of parameters: 1 id: 27 unit: func getDrainHelper() file: pkg/node/node.go start line: 507 end line: 536 size: 26 LOC McCabe index: 4 number of parameters: 1 id: 28 unit: func() file: pkg/monitor/sqsevent/sqs-monitor.go start line: 68 end line: 97 size: 25 LOC McCabe index: 7 number of parameters: 1 id: 29 unit: func() file: pkg/monitor/sqsevent/sqs-monitor.go start line: 108 end line: 136 size: 25 LOC McCabe index: 8 number of parameters: 1 id: 30 unit: func() file: pkg/monitor/sqsevent/sqs-monitor.go start line: 317 end line: 344 size: 25 LOC McCabe index: 4 number of parameters: 1 id: 31 unit: func() file: pkg/ec2metadata/ec2metadata.go start line: 323 end line: 349 size: 25 LOC McCabe index: 4 number of parameters: 1 id: 32 unit: func ValidateWebhookConfig() file: pkg/webhook/webhook.go start line: 126 end line: 154 size: 25 LOC McCabe index: 6 number of parameters: 1 id: 33 unit: func uncordonAfterRebootPreDrain() file: pkg/monitor/scheduledevent/scheduled-event-monitor.go start line: 116 end line: 142 size: 24 LOC McCabe index: 7 number of parameters: 2 id: 34 unit: func() file: pkg/monitor/sqsevent/sqs-monitor.go start line: 347 end line: 366 size: 20 LOC McCabe index: 3 number of parameters: 1 id: 35 unit: func() file: pkg/node/node.go start line: 93 end line: 113 size: 20 LOC McCabe index: 5 number of parameters: 1 id: 36 unit: func() file: pkg/interruptioneventstore/interruption-event-store.go start line: 167 end line: 185 size: 19 LOC McCabe index: 5 number of parameters: 1 id: 37 unit: func() file: pkg/interruptioneventstore/interruption-event-store.go start line: 188 end line: 206 size: 19 LOC McCabe index: 4 number of parameters: 1 id: 38 unit: func handleRebootUncordon() file: cmd/node-termination-handler.go start line: 259 end line: 277 size: 19 LOC McCabe index: 5 number of parameters: 3 id: 39 unit: func InitProbes() file: pkg/observability/probes.go start line: 13 end line: 35 size: 18 LOC McCabe index: 4 number of parameters: 3 id: 40 unit: func() file: pkg/monitor/sqsevent/sqs-monitor.go start line: 193 end line: 212 size: 18 LOC McCabe index: 2 number of parameters: 1 id: 41 unit: func addTaintToSpec() file: pkg/node/node.go start line: 613 end line: 630 size: 18 LOC McCabe index: 3 number of parameters: 4 id: 42 unit: func cordonAndDrainNode() file: cmd/node-termination-handler.go start line: 391 end line: 408 size: 18 LOC McCabe index: 3 number of parameters: 6 id: 43 unit: func registerMetricsWith() file: pkg/observability/opentelemetry.go start line: 106 end line: 125 size: 17 LOC McCabe index: 3 number of parameters: 1 id: 44 unit: func() file: pkg/node/node.go start line: 395 end line: 415 size: 17 LOC McCabe index: 5 number of parameters: 1 id: 45 unit: func() file: pkg/node/node.go start line: 478 end line: 495 size: 17 LOC McCabe index: 4 number of parameters: 1 id: 46 unit: func() file: pkg/ec2metadata/ec2metadata.go start line: 155 end line: 173 size: 17 LOC McCabe index: 7 number of parameters: 1 id: 47 unit: func() file: pkg/ec2metadata/ec2metadata.go start line: 176 end line: 194 size: 17 LOC McCabe index: 7 number of parameters: 1 id: 48 unit: func cordonNode() file: cmd/node-termination-handler.go start line: 373 end line: 389 size: 17 LOC McCabe index: 3 number of parameters: 5 id: 49 unit: func() file: pkg/interruptioneventstore/interruption-event-store.go start line: 145 end line: 162 size: 16 LOC McCabe index: 6 number of parameters: 1 id: 50 unit: func() file: pkg/node/node.go start line: 200 end line: 218 size: 16 LOC McCabe index: 4 number of parameters: 1 id: 51 unit: func() file: pkg/ec2metadata/ec2metadata.go start line: 137 end line: 152 size: 16 LOC McCabe index: 5 number of parameters: 1 id: 52 unit: func() file: pkg/interruptioneventstore/interruption-event-store.go start line: 64 end line: 79 size: 15 LOC McCabe index: 3 number of parameters: 1 id: 53 unit: func() file: pkg/node/node.go start line: 116 end line: 130 size: 15 LOC McCabe index: 4 number of parameters: 1 id: 54 unit: func() file: pkg/node/node.go start line: 133 end line: 147 size: 15 LOC McCabe index: 4 number of parameters: 1 id: 55 unit: func() file: pkg/node/node.go start line: 183 end line: 197 size: 15 LOC McCabe index: 5 number of parameters: 1 id: 56 unit: func() file: pkg/ec2metadata/ec2metadata.go start line: 197 end line: 211 size: 15 LOC McCabe index: 5 number of parameters: 1 id: 57 unit: func New() file: pkg/interruptioneventstore/interruption-event-store.go start line: 41 end line: 54 size: 14 LOC McCabe index: 2 number of parameters: 1 id: 58 unit: func GetReasonForKind() file: pkg/observability/k8s-events.go start line: 144 end line: 157 size: 14 LOC McCabe index: 5 number of parameters: 1 id: 59 unit: func() file: pkg/monitor/scheduledevent/scheduled-event-monitor.go start line: 57 end line: 70 size: 14 LOC McCabe index: 4 number of parameters: 1 id: 60 unit: func() file: pkg/monitor/sqsevent/sqs-monitor.go start line: 215 end line: 228 size: 14 LOC McCabe index: 3 number of parameters: 1 id: 61 unit: func() file: pkg/node/node.go start line: 299 end line: 314 size: 13 LOC McCabe index: 4 number of parameters: 1 id: 62 unit: func() file: pkg/node/node.go start line: 317 end line: 332 size: 13 LOC McCabe index: 4 number of parameters: 1 id: 63 unit: func() file: pkg/node/node.go start line: 335 end line: 350 size: 13 LOC McCabe index: 4 number of parameters: 1 id: 64 unit: func() file: pkg/node/node.go start line: 377 end line: 392 size: 13 LOC McCabe index: 4 number of parameters: 1 id: 65 unit: func getTaintEffect() file: pkg/node/node.go start line: 543 end line: 555 size: 13 LOC McCabe index: 4 number of parameters: 1 id: 66 unit: func New() file: pkg/ec2metadata/ec2metadata.go start line: 122 end line: 134 size: 13 LOC McCabe index: 1 number of parameters: 2 id: 67 unit: func retry() file: pkg/ec2metadata/ec2metadata.go start line: 306 end line: 320 size: 13 LOC McCabe index: 3 number of parameters: 3 id: 68 unit: func() file: pkg/interruptioneventstore/interruption-event-store.go start line: 82 end line: 93 size: 12 LOC McCabe index: 3 number of parameters: 1 id: 69 unit: func() file: pkg/observability/opentelemetry.go start line: 91 end line: 104 size: 12 LOC McCabe index: 3 number of parameters: 1 id: 70 unit: func isConfigProvided() file: pkg/config/config.go start line: 392 end line: 403 size: 12 LOC McCabe index: 3 number of parameters: 2 id: 71 unit: func parseExtraAnnotations() file: pkg/observability/k8s-events.go start line: 160 end line: 170 size: 11 LOC McCabe index: 3 number of parameters: 2 id: 72 unit: func getIntEnv() file: pkg/config/config.go start line: 367 end line: 377 size: 11 LOC McCabe index: 3 number of parameters: 2 id: 73 unit: func getBoolEnv() file: pkg/config/config.go start line: 380 end line: 390 size: 11 LOC McCabe index: 3 number of parameters: 2 id: 74 unit: func() file: pkg/node/node.go start line: 150 end line: 160 size: 11 LOC McCabe index: 3 number of parameters: 1 id: 75 unit: func() file: pkg/node/node.go start line: 286 end line: 296 size: 11 LOC McCabe index: 3 number of parameters: 1 id: 76 unit: func() file: pkg/node/node.go start line: 364 end line: 374 size: 11 LOC McCabe index: 3 number of parameters: 1 id: 77 unit: func ttlHeaderToInt() file: pkg/ec2metadata/ec2metadata.go start line: 294 end line: 304 size: 11 LOC McCabe index: 3 number of parameters: 1 id: 78 unit: func UptimeFromFile() file: pkg/uptime/common.go start line: 28 end line: 39 size: 11 LOC McCabe index: 3 number of parameters: 1 id: 79 unit: func() file: pkg/interruptioneventstore/interruption-event-store.go start line: 96 end line: 105 size: 10 LOC McCabe index: 3 number of parameters: 1 id: 80 unit: func() file: pkg/observability/k8s-events.go start line: 132 end line: 141 size: 10 LOC McCabe index: 2 number of parameters: 1 id: 81 unit: func() file: pkg/monitor/spotitn/spot-itn-monitor.go start line: 50 end line: 59 size: 10 LOC McCabe index: 4 number of parameters: 1 id: 82 unit: func() file: pkg/monitor/rebalancerecommendation/rebalance-recommendation-monitor.go start line: 48 end line: 57 size: 10 LOC McCabe index: 4 number of parameters: 1 id: 83 unit: func runPreDrainTask() file: cmd/node-termination-handler.go start line: 362 end line: 371 size: 10 LOC McCabe index: 2 number of parameters: 5 id: 84 unit: func runPostDrainTask() file: cmd/node-termination-handler.go start line: 410 end line: 419 size: 10 LOC McCabe index: 2 number of parameters: 5 id: 85 unit: func getRegionFromQueueURL() file: cmd/node-termination-handler.go start line: 421 end line: 430 size: 10 LOC McCabe index: 4 number of parameters: 1 id: 86 unit: func() file: pkg/interruptioneventstore/interruption-event-store.go start line: 123 end line: 131 size: 9 LOC McCabe index: 3 number of parameters: 1 id: 87 unit: func livenessHandler() file: pkg/observability/probes.go start line: 37 end line: 45 size: 9 LOC McCabe index: 2 number of parameters: 2 id: 88 unit: func() file: pkg/node/node.go start line: 172 end line: 180 size: 9 LOC McCabe index: 3 number of parameters: 1 id: 89 unit: func() file: pkg/node/node.go start line: 418 end line: 426 size: 9 LOC McCabe index: 3 number of parameters: 1 id: 90 unit: func() file: pkg/node/node.go start line: 497 end line: 505 size: 9 LOC McCabe index: 2 number of parameters: 1 id: 91 unit: func() file: pkg/interruptioneventstore/interruption-event-store.go start line: 135 end line: 142 size: 8 LOC McCabe index: 2 number of parameters: 1 id: 92 unit: func getEnv() file: pkg/config/config.go start line: 357 end line: 364 size: 8 LOC McCabe index: 3 number of parameters: 2 id: 93 unit: func NewSpotInterruptionMonitor() file: pkg/monitor/spotitn/spot-itn-monitor.go start line: 40 end line: 47 size: 8 LOC McCabe index: 1 number of parameters: 4 id: 94 unit: func NewScheduledEventMonitor() file: pkg/monitor/scheduledevent/scheduled-event-monitor.go start line: 47 end line: 54 size: 8 LOC McCabe index: 1 number of parameters: 4 id: 95 unit: func() file: pkg/monitor/sqsevent/event-bridge.go start line: 36 end line: 43 size: 8 LOC McCabe index: 2 number of parameters: 1 id: 96 unit: func() file: pkg/node/node.go start line: 353 end line: 361 size: 8 LOC McCabe index: 2 number of parameters: 1 id: 97 unit: func getUptimeFunc() file: pkg/node/node.go start line: 689 end line: 696 size: 8 LOC McCabe index: 2 number of parameters: 1 id: 98 unit: func Uptime() file: pkg/uptime/uptime_windows.go start line: 29 end line: 36 size: 8 LOC McCabe index: 2 number of parameters: 0 id: 99 unit: func() file: pkg/interruptioneventstore/interruption-event-store.go start line: 107 end line: 113 size: 7 LOC McCabe index: 5 number of parameters: 1 id: 100 unit: func() file: pkg/config/config.go start line: 226 end line: 232 size: 7 LOC McCabe index: 2 number of parameters: 1 id: 101 unit: func setInterruptionTaint() file: pkg/monitor/spotitn/spot-itn-monitor.go start line: 99 end line: 106 size: 7 LOC McCabe index: 2 number of parameters: 2 id: 102 unit: func NewRebalanceRecommendationMonitor() file: pkg/monitor/rebalancerecommendation/rebalance-recommendation-monitor.go start line: 39 end line: 45 size: 7 LOC McCabe index: 1 number of parameters: 3 id: 103 unit: func setInterruptionTaint() file: pkg/monitor/rebalancerecommendation/rebalance-recommendation-monitor.go start line: 97 end line: 104 size: 7 LOC McCabe index: 2 number of parameters: 2 id: 104 unit: func New() file: pkg/node/node.go start line: 75 end line: 81 size: 7 LOC McCabe index: 2 number of parameters: 1 id: 105 unit: func NewWithValues() file: pkg/node/node.go start line: 84 end line: 90 size: 7 LOC McCabe index: 1 number of parameters: 3 id: 106 unit: func() file: pkg/node/node.go start line: 163 end line: 169 size: 7 LOC McCabe index: 2 number of parameters: 1 id: 107 unit: func() file: pkg/observability/opentelemetry.go start line: 83 end line: 88 size: 6 LOC McCabe index: 2 number of parameters: 1 id: 108 unit: func isRestartEvent() file: pkg/monitor/scheduledevent/scheduled-event-monitor.go start line: 149 end line: 154 size: 6 LOC McCabe index: 4 number of parameters: 1 id: 109 unit: func watchForInterruptionEvents() file: cmd/node-termination-handler.go start line: 279 end line: 284 size: 6 LOC McCabe index: 2 number of parameters: 2 id: 110 unit: func() file: pkg/interruptioneventstore/interruption-event-store.go start line: 57 end line: 61 size: 5 LOC McCabe index: 1 number of parameters: 1 id: 111 unit: func() file: pkg/interruptioneventstore/interruption-event-store.go start line: 116 end line: 120 size: 5 LOC McCabe index: 1 number of parameters: 1 id: 112 unit: func() file: pkg/monitor/sqsevent/sqs-monitor.go start line: 100 end line: 105 size: 5 LOC McCabe index: 1 number of parameters: 1 id: 113 unit: func isStateCanceledOrCompleted() file: pkg/monitor/scheduledevent/scheduled-event-monitor.go start line: 144 end line: 147 size: 4 LOC McCabe index: 2 number of parameters: 1 id: 114 unit: func jsonPatchEscape() file: pkg/node/node.go start line: 538 end line: 541 size: 4 LOC McCabe index: 1 number of parameters: 1 id: 115 unit: func() file: pkg/monitor/spotitn/spot-itn-monitor.go start line: 62 end line: 64 size: 3 LOC McCabe index: 1 number of parameters: 1 id: 116 unit: func() file: pkg/monitor/scheduledevent/scheduled-event-monitor.go start line: 73 end line: 75 size: 3 LOC McCabe index: 1 number of parameters: 1 id: 117 unit: func() file: pkg/monitor/sqsevent/sqs-monitor.go start line: 63 end line: 65 size: 3 LOC McCabe index: 1 number of parameters: 1 id: 118 unit: func() file: pkg/monitor/types.go start line: 47 end line: 49 size: 3 LOC McCabe index: 1 number of parameters: 1 id: 119 unit: func() file: pkg/monitor/types.go start line: 52 end line: 54 size: 3 LOC McCabe index: 1 number of parameters: 1 id: 120 unit: func() file: pkg/monitor/rebalancerecommendation/rebalance-recommendation-monitor.go start line: 60 end line: 62 size: 3 LOC McCabe index: 1 number of parameters: 1 id: 121 unit: func Uptime() file: pkg/uptime/uptime_darwin.go start line: 19 end line: 21 size: 3 LOC McCabe index: 1 number of parameters: 0 id: 122 unit: func Uptime() file: pkg/uptime/uptime_linux.go start line: 18 end line: 20 size: 3 LOC McCabe index: 1 number of parameters: 0