I read the invoker's code, but I still cannot understand how the invoker can execute users' fuctions. Furthermore, when I check the invoker's pod' logs, I find something like below. How can other components like ContainerPool, KubernetesClient print their logs in the pod when I cannot find them in the code ?
[2021-01-05T09:24:12.660Z] [INFO] [#tid_sid_invokerWarmup] [ContainerPool] found 0 started and 0 starting; initing 2 pre-warms to desired count: 2 for kind:nodejs:10 mem:256 MB
[2021-01-05T09:24:13.181Z] [INFO] [#tid_sid_invokerWarmup] [KubernetesClient] launching pod wskowdev-invoker-00-1-prewarm-nodejs10 (image:openwhisk/action-nodejs-v10:1.16.0, mem: 256) (timeout: 60s) [marker:invoker_kubeapi.create_start:6253]
[2021-01-05T09:24:13.181Z] [INFO] [#tid_sid_invokerWarmup] [KubernetesClient] launching pod wskowdev-invoker-00-2-prewarm-nodejs10 (image:openwhisk/action-nodejs-v10:1.16.0, mem: 256) (timeout: 60s) [marker:invoker_kubeapi.create_start:6253]
[2021-01-05T09:24:13.232Z] [INFO] [#tid_sid_invokerHealth] [InvokerReactive] [marker:invoker_activation_start:680360168]
[2021-01-05T09:24:13.243Z] [WARN] [#tid_sid_invokerHealth] [InvokerReactive] revision was not provided for whisk.system/invokerHealthTestAction0
[2021-01-05T09:24:13.492Z] [INFO] [#tid_sid_invokerHealth] [CouchDbRestStore] [GET] 'test_whisks' finding document: 'id: whisk.system/invokerHealthTestAction0' [marker:database_getDocument_start:680360428]
[2021-01-05T09:24:13.524Z] [INFO] [#tid_sid_invokerHealth] [CouchDbRestStore] [marker:database_getDocument_finish:680360461:33]
[2021-01-05T09:24:13.637Z] [INFO] [#tid_sid_invokerHealth] [KubernetesClient] launching pod wskowdev-invoker-00-3-whisksystem-invokerhealthtestaction0 (image:openwhisk/action-nodejs-v10:1.16.0, mem: 128) (timeout: 60s) [marker:invoker_kubeapi.create_start:680360574]
[2021-01-05T09:24:13.640Z] [INFO] [#tid_sid_invokerHealth] [ContainerPool] containerStart containerState: cold container: None activations: 1 of max 1 action: invokerHealthTestAction0 namespace: whisk.system activationId: 6fc606abe2f242578606abe2f2e257a2 [marker:invoker_containerStart.cold_counter:680360577]
[2021-01-05T09:24:40.910Z] [INFO] [#tid_sid_invokerWarmup] [KubernetesClient] [marker:invoker_kubeapi.create_finish:33983:27728]
[2021-01-05T09:24:56.226Z] [INFO] [#tid_sid_invokerWarmup] [KubernetesClient] [marker:invoker_kubeapi.create_finish:49297:43043]
[2021-01-05T09:25:10.816Z] [INFO] [#tid_sid_invokerHealth] [KubernetesClient] [marker:invoker_kubeapi.create_finish:680417752:57178]
[2021-01-05T09:25:11.393Z] [INFO] [#tid_sid_invokerHealth] [KubernetesContainer] sending initialization to ContainerId(wskowdev-invoker-00-3-whisksystem-invokerhealthtestaction0) ContainerAddress(10.244.2.56,8080) [marker:invoker_activationInit_start:680418330]
[2021-01-05T09:25:11.820Z] [INFO] [#tid_sid_invokerHealth] [KubernetesContainer] initialization result: ok [marker:invoker_activationInit_finish:680418755:422]
[2021-01-05T09:25:11.823Z] [INFO] [#tid_sid_unknown] [ContainerProxy] resending up to 0 from 0 buffered jobs
[2021-01-05T09:25:11.825Z] [INFO] [#tid_sid_invokerHealth] [KubernetesContainer] sending arguments to /whisk.system/invokerHealthTestAction0 at ContainerId(wskowdev-invoker-00-3-whisksystem-invokerhealthtestaction0) ContainerAddress(10.244.2.56,8080) [marker:invoker_activationRun_start:680418762]
[2021-01-05T09:25:11.838Z] [INFO] [#tid_sid_invokerHealth] [KubernetesContainer] running result: ok [marker:invoker_activationRun_finish:680418774:9]
[2021-01-05T09:25:11.847Z] [INFO] [#tid_sid_invokerHealth] [ContainerProxy] [marker:invoker_collectLogs_start:680418784]
[2021-01-05T09:25:11.967Z] [INFO] [#tid_sid_invokerHealth] [ContainerProxy] [marker:invoker_collectLogs_finish:680418902:116]
I read the invoker's code, but I still cannot understand how the invoker can execute users' fuctions. Furthermore, when I check the invoker's pod' logs, I find something like below. How can other components like ContainerPool, KubernetesClient print their logs in the pod when I cannot find them in the code ?